#ifndef __GobiAPIDef_h__
#define __GobiAPIDef_h__

/*=========================================================================*/
// Definitions
/*=========================================================================*/
#ifdef GOBIAPI_EXPORTS
	#define IMPORTGOBI extern "C" __declspec( dllexport )   
#else  //GOBIAPI_EXPORTS
	#ifdef __cplusplus
		/* C++ callable DLL */
		#define IMPORTGOBI extern "C" __declspec( dllimport )   
	#else
		/* C callable DLL */
		#define IMPORTGOBI __declspec( dllimport )
	#endif
#endif //GOBIAPI_EXPORTS

//////////////////////////

#ifdef GOBIAPI_EXPORTS
       #define SWIIMPORT extern "C" __declspec( dllexport )   
#else  //GOBIAPI_EXPORTS
    #ifdef __cplusplus
       /* C++ callable DLL */
       #define SWIIMPORT extern "C" __declspec( dllimport )   
    #else
       /* C callable DLL */
       #define SWIIMPORT __declspec( dllimport )
    #endif
#endif //GOBIAPI_EXPORTS

// Calling convention for API
#define SWICALLBACK __stdcall
#define SWICMAPI __stdcall

// Calling convention for API
#define GOBICALLBACK __stdcall
#define GOBICMAPI __stdcall
// Calling convention for API
#define GOBIAPI __cdecl

////////////////////////////
#ifdef GOBIAPI_EXPORTS
       #define QCIMPORT2K extern "C" __declspec( dllexport )   
#else  //GOBIAPI_EXPORTS
    #ifdef __cplusplus
       /* C++ callable DLL */
       #define QCIMPORT2K extern "C" __declspec( dllimport )   
    #else
       /* C callable DLL */
       #define QCIMPORT2K __declspec( dllimport )
    #endif
#endif //GOBIAPI_EXPORTS

// Calling convention for API
#define QCCALLBACK2K __stdcall
#define QCWWANAPI2K __stdcall



// Technology Constants
#define TECHNOLOGY_CDMA			0x00
#define TECHNOLOGY_UMTS			0x01
#define TECHNOLOGY_LTE			0x02
#define TECHNOLOGY_MULT			0x03

// Carrier Constants
#define CARRIER_GENERIC			1
#define CARRIER_FACTORY			2
#define CARRIER_NORF			3
#define CARRIER_VERIZON			101
#define CARRIER_SPRINT			102
#define CARRIER_ALLTEL			103
#define CARRIER_BELL			104
#define CARRIER_TELUS			105
#define CARRIER_USCELLUAR		106
#define CARRIER_TELSTRA			107
#define CARRIER_CHINA_UNICOM	108
#define CARRIER_TELECOM_NZ		109
#define CARRIER_SK_TELCOM		110
#define CARRIER_RELIANCE		111
#define CARRIER_TATA			112
#define CARRIER_METRO_PCS		113
#define CARRIER_LEAP			114
#define CARRIER_KDDI			115
#define CARRIER_GRUPO_IUSACALL	116
#define CARRIER_CHINA_MOBILE	117
#define CARRIER_OMH				118
#define CARRIER_ROGERS			176
#define CARRIER_NETINDEX		177
#define CARRIER_DNA				178
#define CARRIER_AERIS			180
#define CARRIER_ATT				201
#define CARRIER_VODAFONE		202
#define CARRIER_TMOBILE			203
#define CARRIER_ORANGE			204
#define CARRIER_TELEFONICA		205
#define CARRIER_TELECOM_ITALIA	206
#define CARRIER_3				207
#define CARRIER_O2				208
#define CARRIER_SFR				209
#define CARRIER_SWISSCOM		210
#define CARRIER_CHINA_MOBILE2	211
#define CARRIER_TELSTRA2		212
#define CARRIER_SIGNAPORE		213
#define CARRIER_RELIANCE2		214
#define CARRIER_BHARTI_AIRTEL	215
#define CARRIER_NTT_DOCOMO		216
#define CARRIER_EMOBILE			217
#define CARRIER_SOFTBANK		218
#define CARRIER_KOREA			219
#define CARRIER_SK_TELECOM2		220
#define CARRIER_TELNOR			221
#define CARRIER_NETCOME_NORWAY	222
#define CARRIER_TELIA_SONERA	223
#define CARRIER_AMX_TELCEL      224
#define CARRIER_BRASIL_VIVO     225

// Region Constants
#define REGION_NORTH_AMERICA	0x00
#define REGION_LATIN_AMERICA	0x01
#define REGION_EUROPE			0x02
#define REGION_ASIA				0x03
#define REGION_AUSTRILIA		0x04
#define REGION_GLOBAL			0x05

#define UNKNOWN					0xFFFFFFFF


#endif