1 #ifndef ossimIdManager_HEADER
2 #define ossimIdManager_HEADER
3 
4 #include <ossim/base/ossimId.h>
5 
6 class OSSIMDLLEXPORT ossimIdManager
7 {
8 public:
9    static ossimIdManager* instance();
10    ossimId generateId();
11    ossimId generateId(ossim_int64 customId);
12    void setCurrentId(ossim_int64 customId);
13 
14 protected:
15    ossimIdManager(); // make sure this can't be constructed outside
16    ossimIdManager(const ossimIdManager& rhs);
17    ~ossimIdManager();
18    void operator =(const ossimIdManager& rhs);
19 
20    static ossimIdManager* theInstance;
21    static ossim_int64            theCurrentId;
22 };
23 
24 #endif
25