Fulqrum Publishing Home   |   Register   |   Today Posts   |   Members   |   UserCP   |   Calendar   |   Search   |   FAQ

Go Back   Official Fulqrum Publishing forum > Fulqrum Publishing > IL-2 Sturmovik: Cliffs of Dover > Technical threads > Controls threads

Controls threads Everything about controls in CoD

View Poll Results: Do you like to see Freetrack interface integrated in IL-2:CoD?
Yes, I like to have Freetrack interface integrated in IL-2:CoD. 133 81.60%
No, I don't like to have Freetrack interface integrated in IL-2:CoD. 30 18.40%
Voters: 163. You may not vote on this poll

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
  #11  
Old 02-23-2011, 05:15 AM
albx albx is offline
Approved Member
 
Join Date: Jun 2010
Location: Italy
Posts: 716
Default

Quote:
Originally Posted by Wolf_Rider View Post
FMD....

that is the problem

the alternatives developers have every opportunity to present a clean alternative to developers in seeking inclusion. A consensus was reached very early in the thread on games should be available to alternative headtracking

even when FT uses a an non-TIR interfacing, most users pass that over for the TIR interfacing for its quality.

there is no monopoly (proven) and no proof of anti-competitive behaviour (that cry has been going on for 2 -3 years now)
elaborate that please... what means? now you are climbing on the glass.. what quality have TIR interface that don't have FT?? THEY JUST SEND FUC*ING DATA THROUGH A .DLL

and, for your information, this is the C++ source code to use Freetrack DLL

Code:
/************************************************************************
 *	freetrack_c_interface.c
 *	
 *  A simple command line application which reads the data from FreeTrack
 *	using the FreeTrackClient.dll interface.
 *
 *	Assumes that a copy of the FreeTrackClient.dll is in the same folder,
 *	thought this does not necessarily have to be the same folder as the 
 *	FreeTrack application itself.
 *
 *	Based on code from http://en.wikipedia.org/wiki/Dynamic-link_library
 *
 *	Alastair Moore, December 2007
 *
 ************************************************************************/

//#include <iostream>
//#include <tchar.h>
#include <windows.h>
#include <stdio.h>
#include <conio.h>

typedef struct
{
	float yaw;
	float pitch;
	float roll;
	float x;
	float y;
	float z;
	int dataID;
}FreeTrackData;

// DLL function signatures
// These match those given in FTTypes.pas
// WINAPI is macro for __stdcall defined somewhere in the depths of windows.h
typedef bool (WINAPI *importGetData)(FreeTrackData * data);
typedef char *(WINAPI *importGetDllVersion)(void);
typedef void (WINAPI *importReportID)(int name);
typedef char *(WINAPI *importProvider)(void);


int main(int argc, char **argv)
{
		//declare imported function pointers
        importGetData getData;
		importGetDllVersion getDllVersion;
		importReportID	reportID;
		importProvider provider;

		// create variables for exchanging data with the dll
        FreeTrackData data;
		FreeTrackData *pData;
		pData = &data;
		char *pDllVersion;
		int name = 453;
		char *pProvider;


        // Load DLL file
        HINSTANCE hinstLib = LoadLibrary("FreeTrackClient.dll");
        if (hinstLib == NULL) {
                printf("ERROR: unable to load DLL\n");
                return 1;
        }
		else
		{
			printf("dll loaded\n");
		}

        // Get function pointers
        getData = (importGetData)GetProcAddress(hinstLib, "FTGetData");
		getDllVersion = (importGetDllVersion)GetProcAddress(hinstLib, "FTGetDllVersion");
		reportID = (importReportID)GetProcAddress(hinstLib, "FTReportID");
		provider = (importProvider)GetProcAddress(hinstLib, "FTProvider");

		// Check they are valid
        if (getData == NULL) {
                printf("ERROR: unable to find 'FTGetData' function\n");
               FreeLibrary(hinstLib);
                return 1;
        }
		if (getDllVersion == NULL){
				printf("ERROR: unable to find 'FTGetDllVersion' function\n");
               FreeLibrary(hinstLib);
                return 1;
		}
		if (reportID == NULL){
				printf("ERROR: unable to find 'FTReportID' function\n");
               FreeLibrary(hinstLib);
                return 1;
		}
		if (reportID == NULL){
				printf("ERROR: unable to find 'FTProvider' function\n");
               FreeLibrary(hinstLib);
                return 1;
		}

		//	Print the address of each function
		printf("FTGetData is at address: 0x%x\n",getData);
		printf("FTGetDllVersion is at address: 0x%x\n",getDllVersion);
		printf("FTReportID is at address: 0x%x\n",reportID);
		printf("FTProvider is at address: 0x%x\n",provider);

		//	Call each function and display result
		pDllVersion = getDllVersion();
		printf("Dll Version: %s\n", pDllVersion);

		pProvider = provider();
		printf("Provider: %s\n", pProvider);
		
		reportID(name);	//not sure what this does - I guess it tells the dll that I am using it.
		
		system("pause"); //wait till keyboard is pressed before entering main loop
		while( kbhit() != 1)
		{
			system("cls"); //clear screen
			if (getData(pData))
			{
				printf("Record ID: %d\n" , data.dataID);
				printf("Yaw: %5.2f\n" , data.yaw );
				printf("Pitch: %5.2f\n" , data.pitch );
				printf("Roll: %5.2f\n" , data.roll );
				printf("X: %5.2f\n" , data.x );
				printf("Y: %5.2f\n" , data.y );
				printf("Z: %5.2f\n" , data.z );
			}
			else
			{
				printf("Nothing returned from getData\n");
				break;
			}
		}

        // Unload DLL file
        FreeLibrary(hinstLib);

		return 0;
}
the red/bolded text are the coords... that is very easy to include in a game... OK?

dmn... i promised not reply to W_R posts but i had to do

Alberto

Last edited by albx; 02-23-2011 at 05:49 AM.
Reply With Quote
 


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 04:22 PM.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright © 2007 Fulqrum Publishing. All rights reserved.