10 #ifndef _HIO_INDEX_MANAGER_
11 #define _HIO_INDEX_MANAGER_
20 #define VI_BITS (16) //number of bits per section of vertex indices
21 #define VI_MASK ((1<<VI_BITS)-1)
22 #define MAX_SI_INDEX ((0x1 << (31-VI_BITS))-1)
27 MVO_POINTER_SIZED_INT offset;
37 #define UNUSED_INDEX_TO_PAIR 0xffffffff
53 unsigned int *IndexToPair;
76 void ExpandSharedVertices();
77 void ExpandShellLookup(
int count);
78 void ExpandPairToIndices();
87 unsigned int *m_IndexToPairs;
88 int m_IndexToPairsAllocated;
89 int m_IndexToPairsUsed;
92 int m_SharedVerticesAllocated;
93 int m_SharedVerticesUsed;
96 int m_ShellLookupAllocated;
97 int m_ShellLookupUsed;
100 int m_PairToIndexAllocated;
101 int m_PairToIndexUsed;
103 void AddOneIndexToPair (
int bigIndex,
int littleIndex);
104 void RemoveOneTranslation (
HC_KEY key,
int littleIndex);
105 void RemoveTranslations (
HC_KEY key,
int face_list_length,
const int *face_list);
107 static void AddOneTranslation (
void *arg1,
void *arg2,
void *arg3);
121 HC_KEY KInsertShell (
int point_count,
const HPoint *points,
int face_list_length,
const int *face_list);
127 void DeleteByKey (
HC_KEY key);
129 void EditShellPoints (
HC_KEY key,
int littleIndexOffset,
int ndelete,
int insert,
const HPoint *points);
133 void EditShellFaces (HC_KEY key,
int ioffset,
int ndelete,
int insert_list_length,
const int *insert_list) {
134 HC_Edit_Shell_Faces (key, ioffset, ndelete, insert_list_length, insert_list);
138 int GetPairCount (
int bigIndex)
const;
145 bool GetPair (
int bigIndex,
int n, HC_KEY *key,
int *littleIndex)
const;
151 bool GetPairs (
int bigIndex, HC_KEY *keys,
int *littleIndices)
const;
153 bool GetIndex (HC_KEY key,
int littleIndex,
int *bigIndex)
const;
Definition: HIndexManager.h:73
Definition: HIndexManager.h:51
void EditShellFaces(HC_KEY key, int ioffset, int ndelete, int insert_list_length, const int *insert_list)
Definition: HIndexManager.h:133
The HPoint class is the data type of a three-dimensional point.
Definition: HGlobals.h:121
Definition: HIndexManager.h:31
Definition: HIndexManager.h:25