/* ==================================================================== * ÆÄ ÀÏ : CooltimePool.h * ¸ñ Àû : * ÀÛ ¼º ÀÚ : °ûöÁß * ÀÛ ¼º ÀÏ : 08/10/02 * ÁÖÀÇ»çÇ× : * =================================================================== */ #ifndef __COOLTIME_POOL_H__ #define __COOLTIME_POOL_H__ ///#ifndef WINVER ///#define WINVER 0x0500 ///#endif /// ///#ifndef _WIN32_WINNT ///#define _WIN32_WINNT 0x0500 ///#endif #pragma once #include "memorypool.h" #define MIN_SAVE_ITEM_COOLTIME 15 // ¾ÆÀÌÅÛ ÄðŸÀÓ ÀúÀå½Ã°£ - ÃÖ¼Ò°ª(ÃÊ) struct PerCooltime : PerNode { long index; // K ¾ÆÀÌÅÛ Á¤ÀÇ Å×ÀÌºí ±âȹ/ºÐ·ù long cooltime1; // ÄðŸÀÓ - Àû¿ëµÈ ÃÑ ½Ã°£ long cooltime2; // ÄðŸÀÓ - Àû¿ëµÈ ±×·ì¹øÈ£ time_t validThru; // ÄðŸÀÓ - ³²Àº½Ã°£ }; struct CooltimeRoot : NodeRoot {}; class cCooltimePool { private: PerCooltime* mNonPagedPoolUsage; // ÆäÀÌÁö ¾ÈµÈ Ç®. public: cCooltimePool( ); void Shutdown ( ); bool IsCooltime ( CooltimeRoot* cooltimeRoot, long index ); void ApplyCooltime ( CooltimeRoot* cooltimeRoot, TB_INVENTORY* inventory ); bool UpdateCooltime ( PerCooltime* perCooltime, long cooltime1, long cooltime2, time_t* ltime ); PerCooltime* GetCooltime ( CooltimeRoot* cooltimeRoot, long index ); void ReleaseCooltime ( CooltimeRoot* cooltimeRoot, PerCooltime* perCooltime ); public: virtual ~cCooltimePool(void); public: static cCooltimePool* mpCooltimePool; }; #endif /// __COOLTIME_POOL_H__