OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
ossimToolFactoryBase.h
Go to the documentation of this file.
1 //**************************************************************************************************
2 //
3 // OSSIM Open Source Geospatial Data Processing Library
4 // See top level LICENSE.txt file for license information
5 //
6 //**************************************************************************************************
7 
8 #ifndef ossimUtilityFactoryBase_HEADER
9 #define ossimUtilityFactoryBase_HEADER
10 
14 #include <ossim/util/ossimTool.h>
15 #include <string>
16 
18 {
19 public:
20  virtual ossimObject* createObject(const ossimString& typeName) const
21  { return (ossimObject*) createTool(typeName); }
22 
23  virtual ossimObject* createObject(const ossimKeywordlist& kwl, const char* prefix=0) const
24  { return (ossimObject*) createTool(kwl, prefix); }
25 
26  virtual ossimTool* createTool(const std::string& typeName) const=0;
27 
28  virtual ossimTool* createTool(const ossimKeywordlist& kwl, const char* prefix=0) const
29  {
30  ossimString type = kwl.find(prefix, ossimKeywordNames::TYPE_KW);
31  return createTool(type);
32  }
33 
39  virtual void getCapabilities(std::map<std::string, std::string>& capabilities) const = 0;
40  virtual std::map<std::string, std::string> getCapabilities() const = 0;
41 };
42 
43 #endif
Represents serializable keyword/value map.
const char * find(const char *key) const
virtual ossimTool * createTool(const ossimKeywordlist &kwl, const char *prefix=0) const
static const char * TYPE_KW
#define OSSIM_DLL
virtual ossimObject * createObject(const ossimString &typeName) const
virtual ossimObject * createObject(const ossimKeywordlist &kwl, const char *prefix=0) const