Files
Cyd 2b8ca921cb Initial full mirror of c:\VWE (source + assets + toolchain + outputs) via Git LFS
Complete disaster-recovery snapshot: engine/game source, game data assets,
VC6 toolchain + DX SDKs, build outputs, deployed game, and _UNUSED archive.
Large binaries in Git LFS; text preserved byte-for-byte (core.autocrlf=false,
no eol attributes). See RECOVERY.md for the one-clone rebuild procedure.
2026-06-24 21:28:16 -05:00

59 lines
1.6 KiB
C++

#if !defined(__CTCL_H__)
#define __CTCL_H__
// The following ifdef block is the standard way of creating macros which make exporting
// from a DLL simpler. All files within this DLL are compiled with the CTCL_EXPORTS
// symbol defined on the command line. this symbol should not be defined on any project
// that uses this DLL. This way any other project whose source files include this file see
// CTCL_API functions as being imported from a DLL, wheras this DLL sees symbols
// defined with this macro as being exported.
#ifdef CTCL_EXPORTS
#define CTCL_API __declspec(dllexport)
#else
#define CTCL_API __declspec(dllimport)
#endif
#undef CTCL_API
#define CTCL_API
enum ECTCLType {
ECTCL_Console = 0,
ECTCL_Launcher,
ECTCL_Game,
ECTCL_CameraShip,
ECTCL_None,
};
struct STeslaInfo
{
public:
BOOL m_bCameraShip;
u_long m_ulAddr;
const char* m_pcsz;
int m_nLauncherState; // 0: no connection, +1: connection, -1: connecting
EGameType m_eGameType;
EGameTypeState m_eGameTypeState;
EGameState m_eGameState;
public:
};
#define C_GameInfo 1 // Console 2 Launcher
#define S_GameInfo 1 // Launcher 2 Console
class CTeslaInfo;
typedef CTeslaInfo* TESLA_HANDLE;
CTCL_API BOOL CTCL_Start(ECTCLType eCTCLType);
CTCL_API void CTCL_Stop();
void __stdcall CTCL_Proc();
CTCL_API void CTCL_Run();
// Used by Console
CTCL_API int CTCL_GetTeslaCount();
CTCL_API TESLA_HANDLE CTCL_GetTeslaInfo(int nIndex, STeslaInfo& TI);
// Used by Launcher
// Used by Game
// Used by CameraShip
// Used by All
#endif // !defined(__CTCL_H__)