OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
ossimImageSourceFactoryRegistry.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 //*************************************************************************
8 // $Id: ossimImageSourceFactoryRegistry.h 15766 2009-10-20 12:37:09Z gpotts $
9 #ifndef ossimImageSourceFactoryRegistry_HEADER
10 #define ossimImageSourceFactoryRegistry_HEADER
12 
14 {
15 public:
16  static ossimImageSourceFactoryRegistry* instance();
18  virtual ossimObject* createObject(const ossimString& name)const;
19  virtual ossimObject* createObject(const ossimKeywordlist& kwl,
20  const char* prefix=0)const;
21  virtual void getTypeNameList(std::vector<ossimString>& typeList)const;
22 
23  void registerFactory(ossimImageSourceFactoryBase* factory);
24  void unregisterFactory(ossimImageSourceFactoryBase* factory);
25  bool findFactory(ossimImageSourceFactoryBase* factory)const;
26 
27 protected:
31 
33  std::vector<ossimImageSourceFactoryBase*> theFactoryList;
35 };
36 
37 extern "C"
38 {
40 }
41 #endif
#define OSSIMDLLEXPORT
Represents serializable keyword/value map.
virtual void getTypeNameList(std::vector< ossimString > &typeList) const =0
#define TYPE_DATA
Definition: ossimRtti.h:339
virtual ossimObject * createObject(const ossimString &typeName) const =0
#define OSSIM_DLL
std::vector< ossimImageSourceFactoryBase * > theFactoryList
const ossimImageSourceFactoryBase & operator=(const ossimImageSourceFactoryBase &)
OSSIMDLLEXPORT void * ossimImageSourceFactoryRegistryGetInstance()
static ossimImageSourceFactoryRegistry * theInstance