OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
ossimProjectionFactoryRegistry.h
Go to the documentation of this file.
1 //*******************************************************************
2 // Copyright (C) 2000 ImageLinks Inc.
3 //
4 // License: See top level LICENSE.txt file.
5 //
6 // Author: Garrett Potts
7 //
8 //*************************************************************************
9 // $Id: ossimProjectionFactoryRegistry.h 22851 2014-08-05 12:02:55Z gpotts $
10 #ifndef ossimProjectionFactoryRegistry_HEADER
11 #define ossimProjectionFactoryRegistry_HEADER
12 #include <ossim/base/ossimString.h>
18 
19 class ossimImageHandler;
21  public ossimFactoryListInterface<ossimProjectionFactoryBase,
22  ossimProjection>
23 {
24 public:
25 
27 
28  static ossimProjectionFactoryRegistry* instance();
29 
30 
31  ossimProjection* createProjection(const ossimFilename& filename,
32  ossim_uint32 entryIdx)const;
34  {
35  return createNativeObjectFromRegistry(name);
36  }
37  ossimProjection* createProjection(const ossimKeywordlist& kwl,
38  const char* prefix=NULL)const;
39 
40  virtual ossimProjection* createProjection(ossimImageHandler* handler)const;
44  virtual ossimObject* createObject(const ossimString& typeName)const
45  {
46  return createObjectFromRegistry(typeName);
47  }
48 
53  const char* prefix=0)const
54  {
55  return createObjectFromRegistry(kwl, prefix);
56  }
57 
63  virtual void getTypeNameList(std::vector<ossimString>& typeList)const
64  {
66  }
67 
68 protected:
72 
73  //static ossimProjectionFactoryRegistry* m_instance;
74  void initializeDefaults();
75 };
76 
77 extern "C"
78 {
80 }
81 
82 #endif
#define OSSIMDLLEXPORT
Represents serializable keyword/value map.
The is a factory list interface that allows registries to be accessed in a common way...
virtual void getTypeNameList(std::vector< ossimString > &typeList) const
This should return the type name of all objects in all factories.
virtual ossimObject * createObject(const ossimString &typeName) const
unsigned int ossim_uint32
OSSIMDLLEXPORT void * ossimProjectionFactoryRegistryGetInstance()
NativeType * createNativeObjectFromRegistry(const ossimString &typeName) const
This is a helper method that calls the createObject and makes sure that the returned object is of the...
ossimProjection * createProjection(const ossimString &name) const
This class defines an abstract Handler which all image handlers(loaders) should derive from...
ossimReferenced & operator=(const ossimReferenced &)
#define OSSIM_DLL
virtual ossimObject * createObject(const ossimKeywordlist &kwl, const char *prefix=0) const
void getAllTypeNamesFromRegistry(std::vector< ossimString > &typeList) const
Will add all object types the factories can allocate.
ossimObject * createObjectFromRegistry(const ossimString &typeName) const
This is the base object return for all objects in the system.