7 static int IDToIndex(
int id)
9 int m_NumOfItems =
BitArray.IDToNumOfItems(
id);
14 static int IDToMask(
int id)
23 int m_NumOfItems =
BitArray.IDToNumOfItems(size);
26 for(
int i = 0;i <= m_NumOfItems;i++)
40 static int IDToNumOfItems(
int id)
49 int m_NumOfItems =
BitArray.IDToNumOfItems(
id);
54 for(
int i = 0;i <= m_NumOfItems;i++)
58 bit_array.Set(m_NumOfItems, bit);
62 static bool IsMaskContainID(
array<int> bit_array,
int id)
64 if(
BitArray.IDToNumOfItems(
id ) > bit_array.Count() )
70 int index_mask =
BitArray.IDToMask(
id);
71 int num_of_items =
BitArray.IDToNumOfItems(
id);
72 int array_mask = bit_array.Get( num_of_items );
74 if ( index_mask & array_mask )
85 static bool AddIDToMask(
array<int> bit_array,
int id)
87 if(
BitArray.IDToNumOfItems(
id) > bit_array.Count() )
93 int num_of_items =
BitArray.IDToNumOfItems(
id);
95 int new_mask = bit_array.Get(num_of_items) | bit;
96 bit_array.Set(num_of_items, new_mask);