1 #ifndef LSL_SIGNATURES_H 2 #define LSL_SIGNATURES_H 3 4 namespace LSL { 5 6 struct SpringMapInfo; 7 8 /** @{ 9 , \defgroup DllPointerTypes Pointer types used with the unitsync library. 10 , \TODO move from global namespace 11 ,/ 12 */ 13 14 15 #ifdef WIN32 16 #define USYNC_CALLCONV __stdcall 17 #else 18 #define USYNC_CALLCONV 19 #endif 20 21 #define FUNC(ret, name, ...) \ 22 typedef ret (USYNC_CALLCONV *name)(__VA_ARGS__) 23 24 FUNC(const char*, GetSpringVersionPtr); 25 FUNC(const char*, GetSpringVersionPatchsetPtr); 26 FUNC(bool, IsSpringReleaseVersionPtr); 27 28 FUNC(int,InitPtr, bool, int); 29 FUNC(void,UnInitPtr); 30 FUNC(const char*, GetNextErrorPtr); 31 FUNC(const char*, GetWritableDataDirectoryPtr); 32 FUNC(const char*, GetDataDirectoryPtr, int); 33 FUNC(int, GetDataDirectoryCountPtr); 34 35 FUNC(int, GetMapCountPtr); 36 FUNC(unsigned int, GetMapChecksumPtr, int); 37 FUNC(const char*, GetMapNamePtr, int); 38 FUNC(const char*, GetMapDescriptionPtr, int); 39 FUNC(const char*, GetMapAuthorPtr, int); 40 FUNC(int, GetMapWidthPtr, int); 41 FUNC(int, GetMapHeightPtr, int); 42 FUNC(int, GetMapTidalStrengthPtr, int); 43 FUNC(int, GetMapWindMinPtr, int); 44 FUNC(int, GetMapWindMaxPtr, int); 45 FUNC(int, GetMapGravityPtr, int); 46 FUNC(int, GetMapResourceCountPtr, int); 47 FUNC(const char*, GetMapResourceNamePtr, int, int); 48 FUNC(float, GetMapResourceMaxPtr, int, int); 49 FUNC(int, GetMapResourceExtractorRadiusPtr, int, int); 50 FUNC(int, GetMapPosCountPtr, int); 51 FUNC(float, GetMapPosXPtr, int, int); 52 FUNC(float, GetMapPosZPtr, int, int); 53 54 FUNC(int, GetMapInfoExPtr, const char*, SpringMapInfo*, int); 55 FUNC(void*, GetMinimapPtr, const char*, int); 56 FUNC(int, GetInfoMapSizePtr, const char*, const char*, int*, int*); 57 FUNC(int, GetInfoMapPtr, const char*, const char*, void*, int); 58 59 FUNC(unsigned int, GetPrimaryModChecksumPtr, int); 60 FUNC(int, GetPrimaryModIndexPtr, const char*); 61 FUNC(const char*, GetPrimaryModNamePtr, int); 62 FUNC(int, GetPrimaryModCountPtr); 63 FUNC(const char*, GetPrimaryModArchivePtr, int); 64 65 FUNC(int, GetSideCountPtr); 66 FUNC(const char*, GetSideNamePtr, int); 67 68 FUNC(void,AddAllArchivesPtr, const char*); 69 FUNC(void,RemoveAllArchivesPtr); 70 71 FUNC(const char*, GetFullUnitNamePtr, int); 72 FUNC(const char*, GetUnitNamePtr, int); 73 FUNC(int, GetUnitCountPtr); 74 FUNC(int,ProcessUnitsNoChecksumPtr); 75 76 FUNC(int,InitFindVFSPtr, const char*); 77 FUNC(int,FindFilesVFSPtr, int, char*, int); 78 FUNC(int,OpenFileVFSPtr, const char*); 79 FUNC(int,FileSizeVFSPtr, int); 80 FUNC(int,ReadFileVFSPtr, int, void*, int); 81 FUNC(void,CloseFileVFSPtr, int); 82 83 FUNC(void,SetSpringConfigFilePtr, const char*); 84 FUNC(const char*, GetSpringConfigFilePtr); 85 86 FUNC(int, GetSpringConfigIntPtr, const char*, int ); 87 FUNC(const char*, GetSpringConfigStringPtr, const char*, const char* ); 88 FUNC(float, GetSpringConfigFloatPtr, const char*, float ); 89 90 FUNC(void,SetSpringConfigStringPtr, const char*, const char* ); 91 FUNC(void,SetSpringConfigIntPtr, const char*, int ); 92 FUNC(void,SetSpringConfigFloatPtr, const char*, float ); 93 94 FUNC(int,ProcessUnitsPtr, void); 95 FUNC(void,AddArchivePtr, const char*); 96 FUNC(unsigned int, GetArchiveChecksumPtr, const char*); 97 FUNC(const char*, GetArchivePathPtr, const char*); 98 FUNC(int, GetMapArchiveCountPtr, const char*); 99 FUNC(const char*, GetMapArchiveNamePtr, int); 100 FUNC(unsigned int, GetMapChecksumPtr, int); 101 FUNC(int, GetMapChecksumFromNamePtr, const char*); 102 103 FUNC(const char*, GetPrimaryModShortNamePtr, int); 104 FUNC(const char*, GetPrimaryModVersionPtr, int); 105 FUNC(const char*, GetPrimaryModMutatorPtr, int); 106 FUNC(const char*, GetPrimaryModGamePtr, int); 107 FUNC(const char*, GetPrimaryModShortGamePtr, int); 108 FUNC(const char*, GetPrimaryModDescriptionPtr, int); 109 FUNC(const char*, GetPrimaryModArchivePtr, int); 110 FUNC(int, GetPrimaryModArchiveCountPtr, int); 111 FUNC(const char*, GetPrimaryModArchiveListPtr, int); 112 FUNC(unsigned int, GetPrimaryModChecksumFromNamePtr, const char*); 113 FUNC(unsigned int, GetModValidMapCountPtr); 114 FUNC(const char*, GetModValidMapPtr, int); 115 116 FUNC(int, GetLuaAICountPtr); 117 FUNC(const char*, GetLuaAINamePtr, int); 118 FUNC(const char*, GetLuaAIDescPtr, int); 119 120 FUNC(int, GetMapOptionCountPtr, const char*); 121 FUNC(int, GetCustomOptionCountPtr, const char*); 122 FUNC(int, GetModOptionCountPtr); 123 FUNC(int, GetSkirmishAIOptionCountPtr, int); 124 FUNC(const char*, GetOptionKeyPtr, int); 125 FUNC(const char*, GetOptionNamePtr, int); 126 FUNC(const char*, GetOptionDescPtr, int); 127 FUNC(const char*, GetOptionSectionPtr, int); 128 FUNC(const char*, GetOptionStylePtr, int); 129 FUNC(int, GetOptionTypePtr, int); 130 FUNC(int, GetOptionBoolDefPtr, int); 131 FUNC(float, GetOptionNumberDefPtr, int); 132 FUNC(float, GetOptionNumberMinPtr, int); 133 FUNC(float, GetOptionNumberMaxPtr, int); 134 FUNC(float, GetOptionNumberStepPtr, int); 135 FUNC(const char*, GetOptionStringDefPtr, int); 136 FUNC(int, GetOptionStringMaxLenPtr, int); 137 FUNC(int, GetOptionListCountPtr, int); 138 FUNC(const char*, GetOptionListDefPtr, int); 139 FUNC(const char*, GetOptionListItemKeyPtr, int, int); 140 FUNC(const char*, GetOptionListItemNamePtr, int, int); 141 FUNC(const char*, GetOptionListItemDescPtr, int, int); 142 143 FUNC(int,OpenArchivePtr, const char*); 144 FUNC(void,CloseArchivePtr, int); 145 FUNC(int,FindFilesArchivePtr, int, int, char*, int*); 146 FUNC(int,OpenArchiveFilePtr, int, const char*); 147 FUNC(int,ReadArchiveFilePtr, int, int, void*, int); 148 FUNC(void,CloseArchiveFilePtr, int, int); 149 FUNC(int,SizeArchiveFilePtr, int, int); 150 151 FUNC(int, GetSkirmishAICountPtr); 152 FUNC(int, GetSkirmishAIInfoCountPtr, int); 153 FUNC(const char*, GetInfoKeyPtr, int); 154 FUNC(const char*, GetInfoValuePtr, int); 155 FUNC(const char*, GetInfoDescriptionPtr, int); 156 157 /// Unitsync functions wrapping lua parser 158 /** @} */ 159 FUNC(void, lpClosePtr); 160 FUNC(int, lpOpenFilePtr, const char*, const char*, const char*); 161 FUNC(int, lpOpenSourcePtr, const char*, const char*); 162 FUNC(int, lpExecutePtr); 163 FUNC(const char*, lpErrorLogPtr); 164 165 FUNC(void, lpAddTableIntPtr, int, int override); 166 FUNC(void, lpAddTableStrPtr, const char*, int override); 167 FUNC(void, lpEndTablePtr); 168 FUNC(void, lpAddIntKeyIntValPtr, int, int); 169 FUNC(void, lpAddStrKeyIntValPtr, const char*, int); 170 FUNC(void, lpAddIntKeyBoolValPtr, int, int); 171 FUNC(void, lpAddStrKeyBoolValPtr, const char*, int); 172 FUNC(void, lpAddIntKeyFloatValPtr, int, float val); 173 FUNC(void, lpAddStrKeyFloatValPtr, const char*, float val); 174 FUNC(void, lpAddIntKeyStrValPtr, int, const char* val); 175 FUNC(void, lpAddStrKeyStrValPtr, const char*, const char* val); 176 177 FUNC(int, lpRootTablePtr); 178 FUNC(int, lpRootTableExprPtr, const char* expr); 179 FUNC(int, lpSubTableIntPtr, int); 180 FUNC(int, lpSubTableStrPtr, const char*); 181 FUNC(int, lpSubTableExprPtr, const char* expr); 182 FUNC(void, lpPopTablePtr); 183 184 FUNC(int, lpGetKeyExistsIntPtr, int); 185 FUNC(int, lpGetKeyExistsStrPtr, const char*); 186 187 FUNC(int, lpGetIntKeyTypePtr, int); 188 FUNC(int, lpGetStrKeyTypePtr, const char*); 189 190 FUNC(int, lpGetIntKeyListCountPtr); 191 FUNC(int, lpGetIntKeyListEntryPtr, int); 192 FUNC(int, lpGetStrKeyListCountPtr); 193 FUNC(const char*, lpGetStrKeyListEntryPtr, int); 194 195 FUNC(int, lpGetIntKeyIntValPtr, int, int); 196 FUNC(int, lpGetStrKeyIntValPtr, const char*, int); 197 FUNC(int, lpGetIntKeyBoolValPtr, int, int); 198 FUNC(int, lpGetStrKeyBoolValPtr, const char*, int); 199 FUNC(float, lpGetIntKeyFloatValPtr, int, float); 200 FUNC(float, lpGetStrKeyFloatValPtr, const char*, float); 201 FUNC(const char*, lpGetIntKeyStrValPtr, int, const char*); 202 FUNC(const char*, lpGetStrKeyStrValPtr, const char*, const char*); 203 204 205 } //namespace LSL 206 207 #endif // LSL_SIGNATURES_H 208