VAMP Cocos2dx Plugin 5.1.1
 
Loading...
Searching...
No Matches
VAMPConnection.h
1//
2// VAMPConnection.h
3// VAMPCocos2dx
4//
5// Copyright © 2024年 Supership. All rights reserved.
6//
7
8#ifndef VAMPConnection_h
9#define VAMPConnection_h
10
11#include <memory>
12#include <string>
13#include <functional>
14
18#define VAMP_COCOS2DX_PLUGIN_VERSION "5.1.1"
19
23#define VAMP_UNKNOWN_COUNTRY_CODE "99"
24
25// namespace vamp {}
26#ifdef __cplusplus
27#define NS_VAMP_BEGIN namespace vamp {
28#define NS_VAMP_END }
29#define USING_NS_VAMP using namespace vamp
30#else
31#define NS_VAMP_BEGIN
32#define NS_VAMP_END
33#define USING_NS_VAMP
34#endif
35
36NS_VAMP_BEGIN
37
38 class VAMPListener;
39
40 class Location;
41
42 class Ad;
43
44 struct Request;
45
46 using GetLocationCallback = std::function<void(const Location &location)>;
47 using UserConsentCallback = std::function<void(bool isRequired)>;
48
49 namespace error {
53 enum class Error {
59 NotSupportedOsVersion = 0,
65 Unknown,
71 ServerError,
77 NoAdnetwork,
83 NeedConnection,
89 MediationTimeout,
95 UserCancel,
101 NoAdStock,
107 AdnetworkError,
114 SettingError,
120 NotLoaded,
126 InvalidParameter,
132 FrequencyCapped,
138 RequestTimeout
139 };
140 }
141
146 public:
152 VAMPCocosSDK(const std::string &placementId);
153
154 virtual ~VAMPCocosSDK();
155
169 static void setTestMode(bool isTestEnabled);
170
176 static bool isTestMode();
177
186 static void setDebugMode(bool isDebugEnabled);
187
193 static bool isDebugMode();
194
200 static void setHyperIDMode(bool useHyperID);
201
207 static bool useHyperID();
208
215 static const std::string sdkVersion();
216
223 static bool isSupportedOSVersion();
224
230 static void getLocation(const GetLocationCallback callback);
231
237 static void setRewardKey(const std::string &key);
238
247 void preload(const Request &request);
248
252 void load(const Request &request);
253
260 bool isReady();
261
265 void show();
266
274
275 class Impl;
276
277 private:
278 std::unique_ptr<Impl> impl_;
279 }; // class VAMPCocosSDK
280
286 public:
287 virtual ~VAMPListener() {}
288
289 public:
295 virtual void onVampReceive(const Ad &ad) {};
296
302 virtual void onVampOpen(const Ad &ad) {};
303
312 virtual void onVampComplete(const Ad &ad) {};
313
321 virtual void onVampClose(const Ad &ad, const bool adClicked) {};
322
332 virtual void onVampFailedToLoad(const Ad &ad, const error::Error err) {};
333
341 virtual void onVampFailedToShow(const Ad &ad, const error::Error err) {};
342
349 virtual void onVampExpired(const std::string &placementId) {};
350
356 virtual void onVampLoadStart(const Ad &ad) {};
357
368 virtual void onVampLoadResult(const Ad &ad, const bool success,
369 const std::string &msg) {};
370 }; // class VAMPListener
371
375 struct Location {
385 std::string countryCode;
393 std::string region;
394 }; // struct Location
395
399 struct Ad {
403 std::string placementId;
407 std::string adnwName;
411 std::string seqId;
412 }; // struct Ad
413
414 struct Request {
418 static const int REQUEST_TIMEOUT_DEFAULT_SEC = 60;
419
424 }; // struct Request
425
426 namespace privacy {
430 enum class ConsentStatus {
434 Unknown = 0,
438 Accepted,
442 Denied
443 }; // enum ConsentStatus
444
448 enum class UnderAgeOfConsent {
452 Unknown = 0,
456 True,
460 False
461 }; // enum UnderAgeOfConsent
462
464 public:
468 static void setUserConsent(ConsentStatus consentStatus);
469
481 static void setChildDirected(bool childDirected);
482
490 static void setUnderAgeOfConsent(UnderAgeOfConsent underAgeOfConsent);
491
499 static void isEUAccess(const UserConsentCallback callback);
500 }; // class PrivacySettings
501 } // namespace privacy
502
503NS_VAMP_END
504
505#endif /* VAMPConnection_h */
Definition VAMPConnection.h:145
static bool useHyperID()
static void setRewardKey(const std::string &key)
static bool isTestMode()
bool isReady()
static bool isDebugMode()
static bool isSupportedOSVersion()
void load(const Request &request)
void setVAMPListener(VAMPListener *listener)
static void setHyperIDMode(bool useHyperID)
static void setDebugMode(bool isDebugEnabled)
static void setTestMode(bool isTestEnabled)
VAMPCocosSDK(const std::string &placementId)
static const std::string sdkVersion()
void preload(const Request &request)
static void getLocation(const GetLocationCallback callback)
Definition VAMPConnection.h:285
virtual void onVampFailedToLoad(const Ad &ad, const error::Error err)
Definition VAMPConnection.h:332
virtual void onVampReceive(const Ad &ad)
Definition VAMPConnection.h:295
virtual void onVampFailedToShow(const Ad &ad, const error::Error err)
Definition VAMPConnection.h:341
virtual void onVampOpen(const Ad &ad)
Definition VAMPConnection.h:302
virtual void onVampLoadResult(const Ad &ad, const bool success, const std::string &msg)
Definition VAMPConnection.h:368
virtual void onVampComplete(const Ad &ad)
Definition VAMPConnection.h:312
virtual void onVampLoadStart(const Ad &ad)
Definition VAMPConnection.h:356
virtual void onVampClose(const Ad &ad, const bool adClicked)
Definition VAMPConnection.h:321
virtual void onVampExpired(const std::string &placementId)
Definition VAMPConnection.h:349
Definition VAMPConnection.h:463
static void setUserConsent(ConsentStatus consentStatus)
static void setChildDirected(bool childDirected)
static void isEUAccess(const UserConsentCallback callback)
static void setUnderAgeOfConsent(UnderAgeOfConsent underAgeOfConsent)
Definition VAMPConnection.h:399
std::string seqId
Definition VAMPConnection.h:411
std::string placementId
Definition VAMPConnection.h:403
std::string adnwName
Definition VAMPConnection.h:407
Definition VAMPConnection.h:375
std::string region
Definition VAMPConnection.h:393
std::string countryCode
Definition VAMPConnection.h:385
Definition VAMPConnection.h:414
static const int REQUEST_TIMEOUT_DEFAULT_SEC
Definition VAMPConnection.h:418
int requestTimeout
Definition VAMPConnection.h:423