All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
PoolHandle.h
1 // Copyright eeGeo Ltd (2012-2014), All Rights Reserved
2 
3 #pragma once
4 
5 #include "Types.h"
6 
7 namespace Eegeo
8 {
9  namespace DataStructures
10  {
11  class PoolHandle
12  {
13  u32 m_handle;
14 
15  public:
16  u32 GetCounter() { return (m_handle >> 16); }
17  u32 GetIndex() { return (m_handle & 0x0000ffff); }
18 
19  PoolHandle(u32 counterValue, u32 indexValue)
20  {
21  m_handle = (counterValue << 16) | (indexValue & 0x0000ffff);
22  }
23 
24  PoolHandle()
25  {
26  m_handle = 0;
27  }
28  };
29  }
30 }