OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
ossimImageGeometryRegistry.cpp
Go to the documentation of this file.
1 //**************************************************************************************************
2 //
3 // License: LGPL
4 //
5 // See LICENSE.txt file in the top level directory for more details.
6 //
7 // Description: Class implementation of ossimImageGeometryRegistry. See .h file for class documentation.
8 //
9 //**************************************************************************************************
10 // $Id$
17 {
18  if(!m_instance)
19  {
23  }
24 
25  return m_instance;
26 }
27 
29 {
30  bool result = false;
31  ossim_uint32 idx = 0;
32  for(;((idx < m_factoryList.size())&&!result); ++idx)
33  {
34  result = m_factoryList[idx]->extendGeometry(handler);
35  }
36 
37  return result;
38 }
39 
41 {
43 
44  ossimRefPtr<ossimImageGeometry> geomResult = dynamic_cast<ossimImageGeometry*>(obj.get());
45 
46  obj = 0;
47 
48  return geomResult.release();
49 }
50 
52  const char* prefix)const
53 {
55 
56  ossimRefPtr<ossimImageGeometry> geomResult = dynamic_cast<ossimImageGeometry*>(obj.get());
57 
58  obj = 0;
59 
60  return geomResult.release();
61 }
62 
64  ossim_uint32 entryIdx)const
65 {
66  ossimImageGeometry* result = 0;
67  ossim_uint32 idx = 0;
68  for(;((idx < m_factoryList.size())&&!result); ++idx)
69  {
70  result = m_factoryList[idx]->createGeometry(filename, entryIdx);
71  }
72 
73  return result;
74 }
static ossimImageGeometryRegistry * instance()
static ossimImageGeometryFactory * instance()
Represents serializable keyword/value map.
static ossimObjectFactoryRegistry * instance()
virtual bool extendGeometry(ossimImageHandler *handler) const
virtual ossimImageGeometry * createGeometry(const ossimString &typeName) const
RTTI_DEF1(ossimImageGeometryRegistry, "ossimImageGeometryRegistry", ossimImageGeometryFactoryBase)
unsigned int ossim_uint32
T * release()
Definition: ossimRefPtr.h:93
void registerFactory(T *factory, bool pushToFrontFlag=false)
Will register a factory to the factory list.
Container class that holds both 2D transform and 3D projection information for an image Only one inst...
This class defines an abstract Handler which all image handlers(loaders) should derive from...
static ossimImageGeometryRegistry * m_instance
ossimObject * createObjectFromRegistry(const ossimString &typeName) const
This is the base object return for all objects in the system.