OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
Public Member Functions | Static Public Member Functions | List of all members
ossimBaseObjectFactory Class Reference

#include <ossimBaseObjectFactory.h>

Inheritance diagram for ossimBaseObjectFactory:
ossimObjectFactory ossimObject ossimReferenced ossimImageGeometryFactoryBase ossimWebRequestFactoryBase ossimImageGeometryFactory ossimImageGeometryRegistry ossimKakaduJpipImageGeometryFactory ossimWebPluginRequestFactory ossimWebRequestFactoryRegistry

Public Member Functions

 ossimBaseObjectFactory ()
 
virtual ~ossimBaseObjectFactory ()
 
virtual ossimObjectcreateObject (const ossimString &typeName) const
 
virtual ossimObjectcreateObject (const ossimKeywordlist &kwl, const char *prefix=0) const
 
virtual void getTypeNameList (std::vector< ossimString > &typeList) const
 
- Public Member Functions inherited from ossimObjectFactory
virtual ~ossimObjectFactory ()
 
- Public Member Functions inherited from ossimObject
 ossimObject ()
 
virtual ~ossimObject ()
 
virtual ossimObjectdup () const
 
virtual ossimString getShortName () const
 
virtual ossimString getLongName () const
 
virtual ossimString getDescription () const
 
virtual ossimString getClassName () const
 
virtual RTTItypeid getType () const
 
virtual bool canCastTo (ossimObject *obj) const
 
virtual bool canCastTo (const RTTItypeid &id) const
 
virtual bool canCastTo (const ossimString &parentClassName) const
 
virtual bool saveState (ossimKeywordlist &kwl, const char *prefix=0) const
 
virtual bool loadState (const ossimKeywordlist &kwl, const char *prefix=0)
 
virtual std::ostream & print (std::ostream &out) const
 Generic print method. More...
 
virtual bool isEqualTo (const ossimObject &obj, ossimCompareType compareType=OSSIM_COMPARE_FULL) const
 
virtual void accept (ossimVisitor &visitor)
 
- Public Member Functions inherited from ossimReferenced
 ossimReferenced ()
 
 ossimReferenced (const ossimReferenced &)
 
ossimReferencedoperator= (const ossimReferenced &)
 
void ref () const
 increment the reference count by one, indicating that this object has another pointer which is referencing it. More...
 
void unref () const
 decrement the reference count by one, indicating that a pointer to this object is referencing it. More...
 
void unref_nodelete () const
 decrement the reference count by one, indicating that a pointer to this object is referencing it. More...
 
int referenceCount () const
 

Static Public Member Functions

static ossimBaseObjectFactoryinstance ()
 

Additional Inherited Members

- Protected Member Functions inherited from ossimReferenced
virtual ~ossimReferenced ()
 

Detailed Description

Definition at line 14 of file ossimBaseObjectFactory.h.

Constructor & Destructor Documentation

◆ ossimBaseObjectFactory()

ossimBaseObjectFactory::ossimBaseObjectFactory ( )

Definition at line 18 of file ossimBaseObjectFactory.cpp.

19 {
20 
21 }

◆ ~ossimBaseObjectFactory()

virtual ossimBaseObjectFactory::~ossimBaseObjectFactory ( )
inlinevirtual

Definition at line 18 of file ossimBaseObjectFactory.h.

18 {}

Member Function Documentation

◆ createObject() [1/2]

ossimObject * ossimBaseObjectFactory::createObject ( const ossimString typeName) const
virtual

Creates an object given a type name.

Implements ossimObjectFactory.

Reimplemented in ossimWebRequestFactoryRegistry, and ossimImageGeometryFactoryBase.

Definition at line 30 of file ossimBaseObjectFactory.cpp.

References STATIC_TYPE_NAME.

Referenced by createObject().

31 {
33  {
34  return new ossimConnectableContainer;
35  }
36 
37  return (ossimObject*)NULL;
38 }
#define STATIC_TYPE_NAME(T)
Definition: ossimRtti.h:325

◆ createObject() [2/2]

ossimObject * ossimBaseObjectFactory::createObject ( const ossimKeywordlist kwl,
const char *  prefix = 0 
) const
virtual

Creates and object given a keyword list.

Implements ossimObjectFactory.

Reimplemented in ossimWebRequestFactoryRegistry, and ossimImageGeometryFactoryBase.

Definition at line 40 of file ossimBaseObjectFactory.cpp.

References ossimString::c_str(), createObject(), ossimKeywordlist::find(), and ossimKeywordNames::TYPE_KW.

42 {
43  const char* type = kwl.find(prefix,
45  ossimString copyPrefix = prefix;
46  if(type)
47  {
48  ossimObject* object = createObject(ossimString(type));
49  if(object)
50  {
51  object->loadState(kwl, copyPrefix.c_str());
52  }
53  return object;
54  }
55  return NULL;
56 }
const char * find(const char *key) const
static const char * TYPE_KW
const char * c_str() const
Returns a pointer to a null-terminated array of characters representing the string&#39;s contents...
Definition: ossimString.h:396
virtual ossimObject * createObject(const ossimString &typeName) const

◆ getTypeNameList()

void ossimBaseObjectFactory::getTypeNameList ( std::vector< ossimString > &  typeList) const
virtual

This should return the type name of all objects in all factories. This is the name used to construct the objects dynamially and this name must be unique.

Implements ossimObjectFactory.

Reimplemented in ossimImageGeometryRegistry, ossimWebRequestFactoryRegistry, ossimImageGeometryFactory, and ossimKakaduJpipImageGeometryFactory.

Definition at line 58 of file ossimBaseObjectFactory.cpp.

References STATIC_TYPE_NAME.

59 {
60  typeList.push_back(STATIC_TYPE_NAME(ossimConnectableContainer));
61 }
#define STATIC_TYPE_NAME(T)
Definition: ossimRtti.h:325

◆ instance()

ossimBaseObjectFactory * ossimBaseObjectFactory::instance ( )
static

Definition at line 23 of file ossimBaseObjectFactory.cpp.

Referenced by ossimInit::initializeDefaultFactories(), and ossimObjectFactoryRegistry::ossimObjectFactoryRegistry().

24 {
25  static ossimBaseObjectFactory staticInstance;
26 
27  return &staticInstance;
28 }

The documentation for this class was generated from the following files: