HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
TAKE_StringSaver.h
Go to the documentation of this file.
1 /*
2  * PROPRIETARY INFORMATION. This software is proprietary to
3  * Side Effects Software Inc., and is not to be reproduced,
4  * transmitted, or disclosed in any way without written permission.
5  *
6  * NAME: TAKE_StringSaver.h ( TAK Library, C++)
7  *
8  * COMMENTS: Since many strings in takes are shared, during the saving
9  * process we assign each unique string an id (basically, an array
10  * index). These strings are shared between all layers in the
11  * take.
12  * To keep track of these strings as we save out the data, we use
13  * this class to manage the string tables.
14  */
15 
16 #ifndef __TAKE_StringSaver__
17 #define __TAKE_StringSaver__
18 
19 #include "TAKE_API.h"
20 #include <UT/UT_SymbolTable.h>
21 
22 class TAKE_Packet;
23 
24 class TAKE_API TAKE_StringSaver : public UT_SymbolMap<int> {
25 public:
27  virtual ~TAKE_StringSaver();
28 
29  int getStringId(TAKE_Packet &os, const char *string);
30 
31 private:
32  int myCount;
33 };
34 
35 #endif
36 
#define TAKE_API
Definition: TAKE_API.h:10