66extern "C" {
77#endif
88
9- #if GA_SHARED_LIB
9+ #ifdef GA_SHARED_LIB
1010 #if defined(_WIN32 )
11- #define GA_EXPORT __declspec(dllexport)
11+ #define GA_API __declspec(dllexport)
1212 #else
13- #define GA_EXPORT __attribute__((visibility("default")))
13+ #define GA_API __attribute__((visibility("default")))
1414 #endif
1515#else
16- #define GA_EXPORT
16+ #if defined (_WIN32 )
17+ #define GA_API __declspec(dllimport)
18+ #else
19+ #define GA_API
20+ #endif
1721#endif
1822
1923enum GAErrorCode
@@ -29,82 +33,109 @@ enum GAStatus: char
2933 EGAEnabled
3034};
3135
36+ enum GAResourceFlowType
37+ {
38+ EGASource = 1 ,
39+ EGASink = 2
40+ };
41+
42+ enum GAProgressionStatus
43+ {
44+ EGAStart = 1 ,
45+ EGAComplete = 2 ,
46+ EGAFail = 3
47+ };
48+
49+ enum GAErrorSeverity
50+ {
51+ EGADebug = 1 ,
52+ EGAInfo = 2 ,
53+ EGAWarning = 3 ,
54+ EGAError = 4 ,
55+ EGACritical = 5
56+ };
57+
3258typedef float (* GAFpsTracker )(void );
3359
34- GA_EXPORT void gameAnalytics_configureAvailableCustomDimensions01 (const char * * customDimensions , int size );
35- GA_EXPORT void gameAnalytics_configureAvailableCustomDimensions02 (const char * * customDimensions , int size );
36- GA_EXPORT void gameAnalytics_configureAvailableCustomDimensions03 (const char * * customDimensions , int size );
37- GA_EXPORT void gameAnalytics_configureAvailableResourceCurrencies (const char * * resourceCurrencies , int size );
38- GA_EXPORT void gameAnalytics_configureAvailableResourceItemTypes (const char * * resourceItemTypes , int size );
39- GA_EXPORT void gameAnalytics_configureBuild (const char * build );
40- GA_EXPORT void gameAnalytics_configureWritablePath (const char * writablePath );
41- GA_EXPORT void gameAnalytics_configureDeviceModel (const char * deviceModel );
42- GA_EXPORT void gameAnalytics_configureDeviceManufacturer (const char * deviceManufacturer );
60+ GA_API void gameAnalytics_freeString (const char * ptr );
61+
62+ GA_API void gameAnalytics_configureAvailableCustomDimensions01 (const char * * customDimensions , int size );
63+ GA_API void gameAnalytics_configureAvailableCustomDimensions02 (const char * * customDimensions , int size );
64+ GA_API void gameAnalytics_configureAvailableCustomDimensions03 (const char * * customDimensions , int size );
65+ GA_API void gameAnalytics_configureAvailableResourceCurrencies (const char * * resourceCurrencies , int size );
66+ GA_API void gameAnalytics_configureAvailableResourceItemTypes (const char * * resourceItemTypes , int size );
67+ GA_API void gameAnalytics_configureBuild (const char * build );
68+ GA_API void gameAnalytics_configureWritablePath (const char * writablePath );
69+ GA_API void gameAnalytics_configureDeviceModel (const char * deviceModel );
70+ GA_API void gameAnalytics_configureDeviceManufacturer (const char * deviceManufacturer );
4371
4472// the version of SDK code used in an engine. Used for sdk_version field.
4573// !! if set then it will override the SdkWrapperVersion.
4674// example "unity 4.6.9"
47- GA_EXPORT void gameAnalytics_configureSdkGameEngineVersion (const char * sdkGameEngineVersion );
75+ GA_API void gameAnalytics_configureSdkGameEngineVersion (const char * sdkGameEngineVersion );
4876
4977// the version of the game engine (if used and version is available)
50- GA_EXPORT void gameAnalytics_configureGameEngineVersion (const char * engineVersion );
78+ GA_API void gameAnalytics_configureGameEngineVersion (const char * engineVersion );
5179
52- GA_EXPORT void gameAnalytics_configureUserId (const char * uId );
80+ GA_API void gameAnalytics_configureUserId (const char * uId );
5381
54- GA_EXPORT void gameAnalytics_configureExternalUserId (const char * extId );
82+ GA_API void gameAnalytics_configureExternalUserId (const char * extId );
5583
5684// initialize - starting SDK (need configuration before starting)
57- GA_EXPORT void gameAnalytics_initialize (const char * gameKey , const char * gameSecret );
85+ GA_API void gameAnalytics_initialize (const char * gameKey , const char * gameSecret );
5886
5987// add events
60- GA_EXPORT void gameAnalytics_addBusinessEvent (const char * currency , double amount , const char * itemType , const char * itemId , const char * cartType , const char * customFields , GAStatus mergeFields );
61- GA_EXPORT void gameAnalytics_addResourceEvent (int flowType , const char * currency , double amount , const char * itemType , const char * itemId , const char * customFields , GAStatus mergeFields );
62- GA_EXPORT void gameAnalytics_addProgressionEvent (int progressionStatus , const char * progression01 , const char * progression02 , const char * progression03 , const char * customFields , GAStatus mergeFields );
63- GA_EXPORT void gameAnalytics_addProgressionEventWithScore (int progressionStatus , const char * progression01 , const char * progression02 , const char * progression03 , int score , const char * customFields , GAStatus mergeFields );
64- GA_EXPORT void gameAnalytics_addDesignEvent (const char * eventId , const char * customFields , GAStatus mergeFields );
65- GA_EXPORT void gameAnalytics_addDesignEventWithValue (const char * eventId , double value , const char * customFields , GAStatus mergeFields );
66- GA_EXPORT void gameAnalytics_addErrorEvent (int severity , const char * message , const char * customFields , GAStatus mergeFields );
88+ GA_API void gameAnalytics_addBusinessEvent (const char * currency , double amount , const char * itemType , const char * itemId , const char * cartType , const char * customFields , GAStatus mergeFields );
89+ GA_API void gameAnalytics_addResourceEvent (GAResourceFlowType flowType , const char * currency , double amount , const char * itemType , const char * itemId , const char * customFields , GAStatus mergeFields );
90+ GA_API void gameAnalytics_addProgressionEvent (GAProgressionStatus progressionStatus , const char * progression01 , const char * progression02 , const char * progression03 , const char * customFields , GAStatus mergeFields );
91+ GA_API void gameAnalytics_addProgressionEventWithScore (GAProgressionStatus progressionStatus , const char * progression01 , const char * progression02 , const char * progression03 , int score , const char * customFields , GAStatus mergeFields );
92+ GA_API void gameAnalytics_addDesignEvent (const char * eventId , const char * customFields , GAStatus mergeFields );
93+ GA_API void gameAnalytics_addDesignEventWithValue (const char * eventId , double value , const char * customFields , GAStatus mergeFields );
94+ GA_API void gameAnalytics_addErrorEvent (GAErrorSeverity severity , const char * message , const char * customFields , GAStatus mergeFields );
6795
6896// set calls can be changed at any time (pre- and post-initialize)
6997// some calls only work after a configure is called (setCustomDimension)
70- GA_EXPORT void gameAnalytics_setEnabledInfoLog (GAStatus flag );
71- GA_EXPORT void gameAnalytics_setEnabledVerboseLog (GAStatus flag );
72- GA_EXPORT void gameAnalytics_setEnabledManualSessionHandling (GAStatus flag );
73- GA_EXPORT void gameAnalytics_setEnabledErrorReporting (GAStatus flag );
74- GA_EXPORT void gameAnalytics_setEnabledEventSubmission (GAStatus flag );
75- GA_EXPORT void gameAnalytics_setCustomDimension01 (const char * dimension01 );
76- GA_EXPORT void gameAnalytics_setCustomDimension02 (const char * dimension02 );
77- GA_EXPORT void gameAnalytics_setCustomDimension03 (const char * dimension03 );
98+ GA_API void gameAnalytics_setEnabledInfoLog (GAStatus flag );
99+ GA_API void gameAnalytics_setEnabledVerboseLog (GAStatus flag );
100+ GA_API void gameAnalytics_setEnabledManualSessionHandling (GAStatus flag );
101+ GA_API void gameAnalytics_setEnabledErrorReporting (GAStatus flag );
102+ GA_API void gameAnalytics_setEnabledEventSubmission (GAStatus flag );
103+ GA_API void gameAnalytics_setCustomDimension01 (const char * dimension01 );
104+ GA_API void gameAnalytics_setCustomDimension02 (const char * dimension02 );
105+ GA_API void gameAnalytics_setCustomDimension03 (const char * dimension03 );
78106
79- GA_EXPORT void gameAnalytics_setGlobalCustomEventFields (const char * customFields );
107+ GA_API void gameAnalytics_setGlobalCustomEventFields (const char * customFields );
80108
81- GA_EXPORT void gameAnalytics_startSession ();
82- GA_EXPORT void gameAnalytics_endSession ();
109+ GA_API void gameAnalytics_startSession ();
110+ GA_API void gameAnalytics_endSession ();
83111
84112// game state changes
85113// will affect how session is started / ended
86- GA_EXPORT void gameAnalytics_onResume ();
87- GA_EXPORT void gameAnalytics_onSuspend ();
88- GA_EXPORT void gameAnalytics_onQuit ();
114+ GA_API void gameAnalytics_onResume ();
115+ GA_API void gameAnalytics_onSuspend ();
116+ GA_API void gameAnalytics_onQuit ();
117+
118+ GA_API const char * gameAnalytics_getRemoteConfigsValueAsString (const char * key );
119+ GA_API const char * gameAnalytics_getRemoteConfigsValueAsStringWithDefaultValue (const char * key , const char * defaultValue );
120+ GA_API const char * gameAnalytics_getRemoteConfigsValueAsJson (const char * key );
89121
90- GA_EXPORT GAErrorCode gameAnalytics_getRemoteConfigsValueAsString (const char * key , char * out , int * size );
91- GA_EXPORT GAErrorCode gameAnalytics_getRemoteConfigsValueAsStringWithDefaultValue (const char * key , const char * defaultValue , char * out , int * bufferSize );
92- GA_EXPORT GAErrorCode gameAnalytics_getRemoteConfigsValueAsJson (const char * key , char * out , int * size );
122+ GA_API const char * gameAnalytics_getUserId ();
123+ GA_API const char * gameAnalytics_getExternalUserId ();
93124
94- GA_EXPORT GAStatus gameAnalytics_isRemoteConfigsReady ();
95- GA_EXPORT GAErrorCode gameAnalytics_getRemoteConfigsContentAsString ( char * out , int * size );
125+ GA_API GAStatus gameAnalytics_isRemoteConfigsReady ();
126+ GA_API const char * gameAnalytics_getRemoteConfigsContentAsString ( );
96127
97- GA_EXPORT GAErrorCode gameAnalytics_getABTestingId ( char * out , int * size );
98- GA_EXPORT GAErrorCode gameAnalytics_getABTestingVariantId ( char * out , int * size );
128+ GA_API const char * gameAnalytics_getABTestingId ( );
129+ GA_API const char * gameAnalytics_getABTestingVariantId ( );
99130
100- GA_EXPORT long long gameAnalytics_getElapsedSessionTime ();
101- GA_EXPORT long long gameAnalytics_getElapsedTimeFromAllSessions ();
102- GA_EXPORT long long gameAnalytics_getElapsedTimeForPreviousSession ();
131+ GA_API long long gameAnalytics_getElapsedSessionTime ();
132+ GA_API long long gameAnalytics_getElapsedTimeFromAllSessions ();
133+ GA_API long long gameAnalytics_getElapsedTimeForPreviousSession ();
103134
104- GA_EXPORT void gameAnalytics_enableSDKInitEvent (GAStatus status );
105- GA_EXPORT void gameAnalytics_enableMemoryHistogram (GAStatus status );
106- GA_EXPORT void gameAnalytics_enableFPSHistogram (GAFpsTracker tracker , GAStatus status );
107- GA_EXPORT void gameAnalytics_enableHardwareTracking (GAStatus status );
135+ GA_API void gameAnalytics_enableSDKInitEvent (GAStatus status );
136+ GA_API void gameAnalytics_enableMemoryHistogram (GAStatus status );
137+ GA_API void gameAnalytics_enableFPSHistogram (GAFpsTracker tracker , GAStatus status );
138+ GA_API void gameAnalytics_enableHardwareTracking (GAStatus status );
108139
109140#ifdef __cplusplus
110141}
0 commit comments