// managertransformbuffer.h #ifndef _3DRENDERER_MANAGERTRANSFORMBUFFER_H_ #define _3DRENDERER_MANAGERTRANSFORMBUFFER_H_ #include "managerbase.h" #include typedef struct { int m_iMaxVertex; int m_iReference; WzVector *m_pwvBuffer; } St_TransformBuffer; class CManagerTransformBuffer : public CManagerBase { public: CManagerTransformBuffer(void); virtual ~CManagerTransformBuffer(void); virtual void Clear(); virtual BOOL Create( CDrawBase *pParentDraw, void *pParam); virtual void Destroy(); // ¹öÆÛ ÇÒ´ç/»ç¿ë/ÇØÁ¦ public: HANDLE Alloc( int iNumVertex); // ÇÒ´ç BOOL AddRef( HANDLE hBuffer); // ÂüÁ¶ Áõ°¡ BOOL Release( HANDLE hBuffer); // ÇØÁ¦ (ÂüÁ¶ °¨¼Ò) WzVector* GetBuffer( HANDLE hBuffer); // ÇØ´ç ¹öÆÛ »ç¿ëÇϱâ BOOL TestBuffer( HANDLE hBuffer); // ÇØ´ç ¹öÆÛ°¡ ½ÇÁúÀûÀ¸·Î »ç¿ëµÇ°í Àִ°¡ ( ½ÇÁ¦·Î ÇÒ´çÀÌ µÇ¾ú´Â°¡? ) // ¹öÆÛ °ü¸® protected: CWzHandleManager m_hmBufferInUse; // ÇöÀç »ç¿ëµÇ°í ÀÖ´Â ¹öÆÛ CWzList m_lstFreeBuffer; // ÇöÀç »ç¿ëÀÌ ¾ÈµÇ°í ÀÖ´Â ¹öÆÛ int m_iCountTotalBuffer; // ÃÑ ¹öÆÛ Å©±â int m_iSizeTotalBuffer; // ¸ðµç ¹öÆÛµéÀÇ Å©±â ÃÑÇÕ void FreeBuffer( HANDLE hBuffer); // ÇØÁ¦ - Free Buffer list ·Î º¸³¿ void DeleteAllBuffers(); // ¸ðµç ¹öÆÛµéÀ» »èÁ¦ void DeleteBuffer( St_TransformBuffer *ptb); // ¹öÆÛ »èÁ¦ }; #endif // _3DRENDERER_MANAGERTRANSFORMBUFFER_H_