OROCHI
 
Loading...
Searching...
No Matches
GxTrophy.h
Go to the documentation of this file.
1//===========================================================================
10//===========================================================================
11#pragma once
12
13GX_NETWORK_NAMESPACE_BEGIN()
14
15//===========================================================================
17//===========================================================================
18class GxTrophy : public GxClassBase
19{
20 //-----------------------------------------------------------
22 //-----------------------------------------------------------
24public:
25 // RTTI定義
26 GX_RTTI_CLASS( GxTrophy, GxClassBase )
27 // new, delete定義
28 GX_OPERATOR_NEW_DELETE(GxAllocatorList::ALLOCATOR_TYPE::SYSTEM)
29
30 static constexpr size_t UNLOCK_QUEUE_NUM = 16;
31
32public:
34 enum class ASYNC_STATUS
35 {
36 PROGRESS = 0,
37 SUCCESS,
38 FAILED
39 };
40
42 enum class RETURN
43 {
44 FALSE_ = 0,
45 TRUE_
46 };
47
48private:
50 struct UnlockInfo
51 {
52 u32 _trophyId;
53 };
54
56 //-----------------------------------------------------------
58 //-----------------------------------------------------------
60public:
62 GxTrophy(void);
64 ~GxTrophy(void) override;
65
67 void terminate( void );
68
70 //-----------------------------------------------------------
72 //-----------------------------------------------------------
74
76 void update( void );
77private:
79 b32 unlock(const UnlockInfo& info);
80
82 //-----------------------------------------------------------
84 //-----------------------------------------------------------
86public:
88 ASYNC_STATUS getAsyncStatus( void ) const;
90 u32 getError( void ) const;
91
92#if !defined(_WINDOWS)
94 constexpr u32 getQueueCount( void ){ return _unlockQueue.GetQueueNum(); }
95#endif // !_WINDOWS
97 GX_FORCE_INLINE UnlockInfo getLastUnlockInfo( void ) const { return _lastUnlockInfo; }
98
100 //-----------------------------------------------------------
102 //-----------------------------------------------------------
104private:
105#if !defined(_WINDOWS)
106 CQueue<UnlockInfo, UNLOCK_QUEUE_NUM> _unlockQueue;
107#endif // !_WINDOWS
108
109 UnlockInfo _lastUnlockInfo;
110
112};
113
114GX_NETWORK_NAMESPACE_END()
オブジェクト基底クラス
Definition GxBase.h:88
トロフィー処理クラス
Definition GxTrophy.h:19
RETURN
メソッド返り値定義
Definition GxTrophy.h:43
constexpr u32 getQueueCount(void)
キューの数を取得
Definition GxTrophy.h:94
ASYNC_STATUS
非同期処理状態
Definition GxTrophy.h:35
32bitブーリアン
Definition GxDefine.h:173