OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
ossimNitfTagFactoryRegistry.h
Go to the documentation of this file.
1 //*******************************************************************
2 //
3 // License: See top level LICENSE.txt file.
4 //
5 // Author: Garrett Potts
6 //
7 // Description: Nitf support class
8 //
9 //********************************************************************
10 // $Id: ossimNitfTagFactoryRegistry.h 22875 2014-08-27 13:52:03Z dburken $
11 #ifndef ossimNitfTagFactoryRegistry_HEADER
12 #define ossimNitfTagFactoryRegistry_HEADER 1
13 
16 #include <vector>
17 
18 class ossimString;
20 
22 {
23 public:
24  virtual ~ossimNitfTagFactoryRegistry();
25  void registerFactory(ossimNitfTagFactory* aFactory);
26  void unregisterFactory(ossimNitfTagFactory* aFactory);
27 
28  static ossimNitfTagFactoryRegistry* instance();
29 
30  ossimRefPtr<ossimNitfRegisteredTag> create(const ossimString &tagName)const;
31  bool exists(ossimNitfTagFactory* factory)const;
32 
33 protected:
35 
36 private:
39 
41  const ossimNitfTagFactoryRegistry& operator=(
42  const ossimNitfTagFactoryRegistry& factory);
43 
44  void initializeDefaults();
45 
46  std::vector<ossimNitfTagFactory*> theFactoryList;
47 };
48 
49 #endif
std::vector< ossimNitfTagFactory * > theFactoryList
#define OSSIM_DLL