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

#include <ossimPointCloudImageHandlerFactory.h>

Inheritance diagram for ossimPointCloudImageHandlerFactory:
ossimImageHandlerFactoryBase ossimObjectFactory ossimObject ossimReferenced

Public Member Functions

 ossimPointCloudImageHandlerFactory ()
 
virtual ~ossimPointCloudImageHandlerFactory ()
 
virtual ossimImageHandleropen (const ossimFilename &fileName, bool openOverview=true) const
 
virtual ossimImageHandleropen (const ossimKeywordlist &kwl, const char *prefix=0) const
 
virtual void getSupportedExtensions (ossimImageHandlerFactoryBase::UniqueStringList &extensionList) const
 
virtual ossimRefPtr< ossimImageHandleropenOverview (const ossimFilename &file) const
 Open overview that takes a file name. More...
 
virtual ossimObjectcreateObject (const ossimString &typeName) const
 
virtual ossimObjectcreateObject (const ossimKeywordlist &kwl, const char *prefix=0) const
 
virtual void getTypeNameList (std::vector< ossimString > &typeList) const
 
virtual void getImageHandlersBySuffix (ossimImageHandlerFactoryBase::ImageHandlerList &result, const ossimString &ext) const
 
virtual void getImageHandlersByMimeType (ossimImageHandlerFactoryBase::ImageHandlerList &result, const ossimString &mimeType) const
 
- Public Member Functions inherited from ossimImageHandlerFactoryBase
virtual ossimRefPtr< ossimImageHandleropen (std::shared_ptr< ossim::istream > &str, const std::string &connectionString, bool openOverview=true) const
 Open method that takes a stream. More...
 
virtual ossimRefPtr< ossimImageHandleropen (std::shared_ptr< ossim::ImageHandlerState > state) const
 
virtual ossimRefPtr< ossimImageHandleropenOverview (std::shared_ptr< ossim::istream > &str, const ossimString &connectionString) const
 Open method that takes a stream. More...
 
- 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 ossimPointCloudImageHandlerFactoryinstance ()
 

Static Private Attributes

static ossimPointCloudImageHandlerFactorym_instance = 0
 

Additional Inherited Members

- Public Types inherited from ossimImageHandlerFactoryBase
typedef UniqueList< ossimStringUniqueStringList
 
typedef std::vector< ossimRefPtr< ossimImageHandler > > ImageHandlerList
 
- Protected Member Functions inherited from ossimReferenced
virtual ~ossimReferenced ()
 

Detailed Description

Definition at line 13 of file ossimPointCloudImageHandlerFactory.h.

Constructor & Destructor Documentation

◆ ossimPointCloudImageHandlerFactory()

ossimPointCloudImageHandlerFactory::ossimPointCloudImageHandlerFactory ( )
inline

Definition at line 16 of file ossimPointCloudImageHandlerFactory.h.

Referenced by instance().

16 {}

◆ ~ossimPointCloudImageHandlerFactory()

ossimPointCloudImageHandlerFactory::~ossimPointCloudImageHandlerFactory ( )
virtual

Member Function Documentation

◆ createObject() [1/2]

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

Creates an object given a type name.

Implements ossimObjectFactory.

Definition at line 84 of file ossimPointCloudImageHandlerFactory.cpp.

References STATIC_TYPE_NAME.

85 {
87  {
88  return new ossimPointCloudImageHandler();
89  }
90 
91  return (ossimObject*)0;
92 }
Class used for rendering point cloud data into a raster tile.
#define STATIC_TYPE_NAME(T)
Definition: ossimRtti.h:325

◆ createObject() [2/2]

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

Creates and object given a keyword list.

Implements ossimObjectFactory.

Definition at line 123 of file ossimPointCloudImageHandlerFactory.cpp.

References ossimKeywordNames::FILENAME_KW, ossimKeywordlist::find(), STATIC_TYPE_NAME, and ossimKeywordNames::TYPE_KW.

125 {
126  ossimObject* result = (ossimObject*)0;
127  const char* type = kwl.find(prefix, ossimKeywordNames::TYPE_KW);
128 
129  if(type)
130  {
131  if (ossimString(type).trim() == STATIC_TYPE_NAME(ossimImageHandler))
132  {
133  const char* lookup = kwl.find(prefix, ossimKeywordNames::FILENAME_KW);
134 
135  if (lookup)
136  {
137  if(traceDebug())
138  {
139  ossimNotify(ossimNotifyLevel_DEBUG) << "BEBUG: filename " << lookup << std::endl;
140  }
141  // Call the open that takes a filename...
142  result = this->open(kwl, prefix);//ossimFilename(lookup));
143  }
144  }
145  else
146  {
147  result = createObject(ossimString(type));
148  if(result)
149  {
150  result->loadState(kwl, prefix);
151  }
152  }
153  }
154  return result;
155 }
const char * find(const char *key) const
virtual bool loadState(const ossimKeywordlist &kwl, const char *prefix=0)
static const char * TYPE_KW
#define STATIC_TYPE_NAME(T)
Definition: ossimRtti.h:325
virtual ossimImageHandler * open(const ossimFilename &fileName, bool openOverview=true) const
This class defines an abstract Handler which all image handlers(loaders) should derive from...
virtual ossimObject * createObject(const ossimString &typeName) const
static const char * FILENAME_KW
OSSIMDLLEXPORT std::ostream & ossimNotify(ossimNotifyLevel level=ossimNotifyLevel_WARN)

◆ getImageHandlersByMimeType()

void ossimPointCloudImageHandlerFactory::getImageHandlersByMimeType ( ossimImageHandlerFactoryBase::ImageHandlerList result,
const ossimString mimeType 
) const
virtual

Reimplemented from ossimImageHandlerFactoryBase.

Definition at line 109 of file ossimPointCloudImageHandlerFactory.cpp.

References ossimString::begin(), ossimString::end(), and getImageHandlersBySuffix().

110 {
111  ossimString test(mimeType.begin(), mimeType.begin()+6);
112  if(test == "image/")
113  {
114  ossimString mimeTypeTest(mimeType.begin() + 6, mimeType.end());
115  getImageHandlersBySuffix(result, mimeTypeTest);
116  if(mimeTypeTest == "las")
117  {
118  result.push_back(new ossimPointCloudImageHandler);
119  }
120  }
121 }
virtual void getImageHandlersBySuffix(ossimImageHandlerFactoryBase::ImageHandlerList &result, const ossimString &ext) const
Class used for rendering point cloud data into a raster tile.
std::string::iterator end()
Definition: ossimString.h:423
std::string::iterator begin()
Definition: ossimString.h:420

◆ getImageHandlersBySuffix()

void ossimPointCloudImageHandlerFactory::getImageHandlersBySuffix ( ossimImageHandlerFactoryBase::ImageHandlerList result,
const ossimString ext 
) const
virtual

Reimplemented from ossimImageHandlerFactoryBase.

Definition at line 100 of file ossimPointCloudImageHandlerFactory.cpp.

Referenced by getImageHandlersByMimeType().

101 {
102  if ((ext == "las") || (ext == "gpkg"))
103  {
104  result.push_back(new ossimPointCloudImageHandler);
105  return;
106  }
107 }
Class used for rendering point cloud data into a raster tile.

◆ getSupportedExtensions()

void ossimPointCloudImageHandlerFactory::getSupportedExtensions ( ossimImageHandlerFactoryBase::UniqueStringList extensionList) const
virtual

Implements ossimImageHandlerFactoryBase.

Definition at line 94 of file ossimPointCloudImageHandlerFactory.cpp.

References ossimImageHandlerFactoryBase::UniqueList< T >::push_back().

95 {
96  extensionList.push_back("las");
97  extensionList.push_back("gpkg");
98 }

◆ getTypeNameList()

void ossimPointCloudImageHandlerFactory::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.

Definition at line 157 of file ossimPointCloudImageHandlerFactory.cpp.

References STATIC_TYPE_NAME.

158 {
159  typeList.push_back(STATIC_TYPE_NAME(ossimPointCloudImageHandler));
160 }
Class used for rendering point cloud data into a raster tile.
#define STATIC_TYPE_NAME(T)
Definition: ossimRtti.h:325

◆ instance()

ossimPointCloudImageHandlerFactory * ossimPointCloudImageHandlerFactory::instance ( )
static

Definition at line 23 of file ossimPointCloudImageHandlerFactory.cpp.

References m_instance, and ossimPointCloudImageHandlerFactory().

24 {
25  if(!m_instance)
26  {
28  }
29 
30  return m_instance;
31 }
static ossimPointCloudImageHandlerFactory * m_instance

◆ open() [1/2]

ossimImageHandler * ossimPointCloudImageHandlerFactory::open ( const ossimFilename fileName,
bool  openOverview = true 
) const
virtual

Implements ossimImageHandlerFactoryBase.

Definition at line 33 of file ossimPointCloudImageHandlerFactory.cpp.

References ossimString::downcase(), ossimString::empty(), ossimFilename::exists(), ossimFilename::ext(), ossimFilename::setExtension(), and ossimString::trim().

35 {
36  static const char* M = "ossimPointCloudImageHandlerFactory::open(filename) -- ";
37 
38  ossimFilename copyFilename = fileName;
40 
41  // Check for empty file.
42  copyFilename.trim();
43  if (copyFilename.empty() || !copyFilename.exists())
44  return 0;
45 
46  ossimString ext = copyFilename.ext().downcase();
47  if(ext == "gz")
48  copyFilename = copyFilename.setExtension("");
49 
50  if (traceDebug())
51  ossimNotify(ossimNotifyLevel_DEBUG)<<M<< "Trying Point Cloud...\n";
52 
53  result = new ossimPointCloudImageHandler();
54  result->setFilename(copyFilename);
55  if (!result->open())
56  result = 0;
58 
59  return result.release();
60 }
virtual bool open()=0
Pure virtual open.
void setOpenOverviewFlag(bool flag)
Sets theOpenOverviewFlag.
Class used for rendering point cloud data into a raster tile.
bool exists() const
virtual void setFilename(const ossimFilename &filename)
Sets the filename.
ossimString trim(const ossimString &valueToTrim=ossimString(" \\)) const
this will strip lead and trailing character passed in.
T * release()
Definition: ossimRefPtr.h:93
static ossimString downcase(const ossimString &aString)
Definition: ossimString.cpp:48
bool empty() const
Definition: ossimString.h:411
ossimString ext() const
virtual ossimRefPtr< ossimImageHandler > openOverview(const ossimFilename &file) const
Open overview that takes a file name.
ossimFilename & setExtension(const ossimString &e)
Sets the extension of a file name.
OSSIMDLLEXPORT std::ostream & ossimNotify(ossimNotifyLevel level=ossimNotifyLevel_WARN)

◆ open() [2/2]

ossimImageHandler * ossimPointCloudImageHandlerFactory::open ( const ossimKeywordlist kwl,
const char *  prefix = 0 
) const
virtual

Implements ossimImageHandlerFactoryBase.

Definition at line 62 of file ossimPointCloudImageHandlerFactory.cpp.

64 {
65  static const char* M = "ossimPointCloudImageHandlerFactory::open(kwl,prefix) -- ";
66  if(traceDebug()) ossimNotify(ossimNotifyLevel_DEBUG) << M <<" entered..." << std::endl;
67 
69  if (traceDebug()) ossimNotify(ossimNotifyLevel_DEBUG)<<M<< "Trying ossimPointCloudImageHandler...\n";
70  result = new ossimPointCloudImageHandler();
71  if (!result->loadState(kwl, prefix))
72  result = 0;
73 
74  return result.get();
75 }
virtual bool loadState(const ossimKeywordlist &kwl, const char *prefix=0)
Method to the load (recreate) the state of an object from a keyword list.
Class used for rendering point cloud data into a raster tile.
OSSIMDLLEXPORT std::ostream & ossimNotify(ossimNotifyLevel level=ossimNotifyLevel_WARN)

◆ openOverview()

ossimRefPtr< ossimImageHandler > ossimPointCloudImageHandlerFactory::openOverview ( const ossimFilename file) const
virtual

Open overview that takes a file name.

This default implementation returns a null ref pointer. Derived factories that have overview readers should override.

Parameters
fileFile to open.
Returns
This default implementation returns a null ref pointer.

Reimplemented from ossimImageHandlerFactoryBase.

Definition at line 77 of file ossimPointCloudImageHandlerFactory.cpp.

79 {
81  return result;
82 }

Member Data Documentation

◆ m_instance

ossimPointCloudImageHandlerFactory * ossimPointCloudImageHandlerFactory::m_instance = 0
staticprivate

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