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

Factory for MrSid image reader. More...

#include <ossimMrSidReaderFactory.h>

Inheritance diagram for ossimMrSidReaderFactory:
ossimImageHandlerFactoryBase ossimObjectFactory ossimObject ossimReferenced

Public Member Functions

virtual ~ossimMrSidReaderFactory ()
 virtual destructor More...
 
virtual ossimImageHandleropen (const ossimFilename &fileName, bool openOverview=true) const
 open that takes a file name. More...
 
virtual ossimImageHandleropen (const ossimKeywordlist &kwl, const char *prefix=0) const
 open that takes a keyword list and prefix. More...
 
virtual ossimObjectcreateObject (const ossimString &typeName) const
 createObject that takes a class name (ossimMrSidReader) More...
 
virtual ossimObjectcreateObject (const ossimKeywordlist &kwl, const char *prefix=0) const
 Creates and object given a keyword list and prefix. More...
 
virtual void getTypeNameList (std::vector< ossimString > &typeList) const
 Adds ossimMrSidWriter to the typeList. More...
 
virtual void getSupportedExtensions (ossimImageHandlerFactoryBase::UniqueStringList &extensionList) const
 Method to add supported extension to the list, like "sid". More...
 
virtual void getImageHandlersBySuffix (ImageHandlerList &result, const ossimString &ext) const
 
virtual void getImageHandlersByMimeType (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 (const ossimFilename &file) const
 Open overview that takes a file name. More...
 
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 ossimMrSidReaderFactoryinstance ()
 static method to return instance (the only one) of this class. More...
 

Protected Member Functions

bool hasExcludedExtension (const ossimFilename &file) const
 Method to weed out extensions that this plugin knows it does not support. More...
 
 ossimMrSidReaderFactory ()
 hidden from use default constructor More...
 
 ossimMrSidReaderFactory (const ossimMrSidReaderFactory &)
 hidden from use copy constructor More...
 
void operator= (const ossimMrSidReaderFactory &)
 hidden from use copy constructor More...
 
- Protected Member Functions inherited from ossimReferenced
virtual ~ossimReferenced ()
 

Static Protected Attributes

static ossimMrSidReaderFactorytheInstance = 0
 static instance of this class More...
 

Additional Inherited Members

- Public Types inherited from ossimImageHandlerFactoryBase
typedef UniqueList< ossimStringUniqueStringList
 
typedef std::vector< ossimRefPtr< ossimImageHandler > > ImageHandlerList
 

Detailed Description

Factory for MrSid image reader.

Definition at line 21 of file ossimMrSidReaderFactory.h.

Constructor & Destructor Documentation

◆ ~ossimMrSidReaderFactory()

ossimMrSidReaderFactory::~ossimMrSidReaderFactory ( )
virtual

virtual destructor

Definition at line 31 of file ossimMrSidReaderFactory.cpp.

References theInstance.

32 {
33  theInstance = 0;
34 }
static ossimMrSidReaderFactory * theInstance
static instance of this class

◆ ossimMrSidReaderFactory() [1/2]

ossimMrSidReaderFactory::ossimMrSidReaderFactory ( )
protected

hidden from use default constructor

Definition at line 183 of file ossimMrSidReaderFactory.cpp.

Referenced by instance().

183 {}

◆ ossimMrSidReaderFactory() [2/2]

ossimMrSidReaderFactory::ossimMrSidReaderFactory ( const ossimMrSidReaderFactory )
protected

hidden from use copy constructor

Definition at line 185 of file ossimMrSidReaderFactory.cpp.

185 {}

Member Function Documentation

◆ createObject() [1/2]

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

createObject that takes a class name (ossimMrSidReader)

Parameters
typeNameShould be "ossimMrSidReader".
Returns
pointer to image writer on success, NULL on failure.

Implements ossimObjectFactory.

Definition at line 116 of file ossimMrSidReaderFactory.cpp.

References ossimRefPtr< T >::release().

118 {
119  ossimRefPtr<ossimObject> result = 0;
120  if(typeName == "ossimMrSidReader")
121  {
122  result = new ossimMrSidReader;
123  }
124  else if(typeName == "ossimMG4LidarReader")
125  {
126  result = new ossimMrSidReader;
127  }
128 
129  return result.release();
130 }
T * release()
Definition: ossimRefPtr.h:93

◆ createObject() [2/2]

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

Creates and object given a keyword list and prefix.

Parameters
kwlThe keyword list.
prefixthe keyword list prefix.
Returns
pointer to image handler on success, NULL on failure.

Implements ossimObjectFactory.

Definition at line 132 of file ossimMrSidReaderFactory.cpp.

References open().

135 {
136  return this->open(kwl, prefix);
137 }
virtual ossimImageHandler * open(const ossimFilename &fileName, bool openOverview=true) const
open that takes a file name.

◆ getImageHandlersByMimeType()

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

Reimplemented from ossimImageHandlerFactoryBase.

Definition at line 161 of file ossimMrSidReaderFactory.cpp.

References ossimString::downcase(), and ossimString::push_back().

163 {
164  ossimString testExt = mimeType.downcase();
165  if(testExt == "image/sid")
166  {
167  result.push_back(new ossimMrSidReader);
168  }
169 }
void push_back(char c)
Equivalent to insert(end(), c).
Definition: ossimString.h:905
static ossimString downcase(const ossimString &aString)
Definition: ossimString.cpp:48

◆ getImageHandlersBySuffix()

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

Reimplemented from ossimImageHandlerFactoryBase.

Definition at line 151 of file ossimMrSidReaderFactory.cpp.

References ossimString::downcase(), and ossimString::push_back().

153 {
154  ossimString testExt = ext.downcase();
155  if(ext == "sid")
156  {
157  result.push_back(new ossimMrSidReader);
158  }
159 }
void push_back(char c)
Equivalent to insert(end(), c).
Definition: ossimString.h:905
static ossimString downcase(const ossimString &aString)
Definition: ossimString.cpp:48

◆ getSupportedExtensions()

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

Method to add supported extension to the list, like "sid".

Parameters
extensionListThe list to add to.

Implements ossimImageHandlerFactoryBase.

Definition at line 145 of file ossimMrSidReaderFactory.cpp.

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

147 {
148  extensionList.push_back(ossimString("sid"));
149 }

◆ getTypeNameList()

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

Adds ossimMrSidWriter to the typeList.

Parameters
typeListList to add to.

Implements ossimObjectFactory.

Definition at line 139 of file ossimMrSidReaderFactory.cpp.

Referenced by ossimSharedLibraryInitialize().

141 {
142  typeList.push_back(ossimString("ossimMrSidReader"));
143 }

◆ hasExcludedExtension()

bool ossimMrSidReaderFactory::hasExcludedExtension ( const ossimFilename file) const
protected

Method to weed out extensions that this plugin knows it does not support.

This is to avoid a costly open on say a tiff or jpeg that is not handled by this plugin.

Returns
true if extension, false if not.

Definition at line 171 of file ossimMrSidReaderFactory.cpp.

References ossimString::downcase(), and ossimFilename::ext().

173 {
174  bool result = true;
175  ossimString ext = file.ext().downcase();
176  if (ext == "sid") //only include the file with .sid extension and exclude any other files
177  {
178  result = false;
179  }
180  return result;
181 }
static ossimString downcase(const ossimString &aString)
Definition: ossimString.cpp:48
ossimString ext() const

◆ instance()

ossimMrSidReaderFactory * ossimMrSidReaderFactory::instance ( )
static

static method to return instance (the only one) of this class.

Returns
pointer to instance of this class.

Definition at line 36 of file ossimMrSidReaderFactory.cpp.

References ossimMrSidReaderFactory(), and theInstance.

Referenced by ossimSharedLibraryFinalize(), and ossimSharedLibraryInitialize().

37 {
38  if(!theInstance)
39  {
41  }
42  return theInstance;
43 }
static ossimMrSidReaderFactory * theInstance
static instance of this class
ossimMrSidReaderFactory()
hidden from use default constructor

◆ open() [1/2]

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

open that takes a file name.

Parameters
fileThe file to open.
openOverviewIf true image handler will attempt to open overview. default = true
Returns
pointer to image handler on success, NULL on failure.

Implements ossimImageHandlerFactoryBase.

Definition at line 45 of file ossimMrSidReaderFactory.cpp.

Referenced by createObject().

47 {
48  if(traceDebug())
49  {
51  << "ossimMrSidReaderFactory::open(filename) DEBUG: entered...\n";
52  }
53 
55 
56  if ( hasExcludedExtension(fileName) == false )
57  {
58  if(traceDebug())
59  {
60  ossimNotify(ossimNotifyLevel_DEBUG) << "\nTrying ossimMrSidReader\n";
61  }
62  reader = new ossimMrSidReader;
64  if(reader->open(fileName) == false)
65  {
66  reader = 0;
67  }
68 
69  if (!reader.valid())
70  {
71  reader = new ossimMG4LidarReader;
73  if(reader->open(fileName) == false)
74  {
75  reader = 0;
76  }
77  }
78  }
79 
80  if(traceDebug())
81  {
83  << "ossimMrSidReaderFactory::open(filename) DEBUG: leaving...\n";
84  }
85 
86  return reader.release();
87 }
virtual bool open()=0
Pure virtual open.
bool hasExcludedExtension(const ossimFilename &file) const
Method to weed out extensions that this plugin knows it does not support.
void setOpenOverviewFlag(bool flag)
Sets theOpenOverviewFlag.
bool valid() const
Definition: ossimRefPtr.h:75
virtual ossimRefPtr< ossimImageHandler > openOverview(const ossimFilename &file) const
Open overview that takes a file name.
T * release()
Definition: ossimRefPtr.h:93
OSSIMDLLEXPORT std::ostream & ossimNotify(ossimNotifyLevel level=ossimNotifyLevel_WARN)

◆ open() [2/2]

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

open that takes a keyword list and prefix.

Parameters
kwlThe keyword list.
prefixthe keyword list prefix.
Returns
pointer to image handler on success, NULL on failure.

Implements ossimImageHandlerFactoryBase.

Definition at line 89 of file ossimMrSidReaderFactory.cpp.

91 {
92  if(traceDebug())
93  {
95  << "ossimMrSidReaderFactory::open(kwl, prefix) DEBUG: entered..."
96  << "Trying ossimMrSidReader..."
97  << std::endl;
98  }
99 
101  if(reader->loadState(kwl, prefix) == false)
102  {
103  reader = 0;
104  }
105 
106  if(traceDebug())
107  {
109  << "ossimMrSidReaderFactory::open(kwl, prefix) DEBUG: leaving..."
110  << std::endl;
111  }
112 
113  return reader.release();
114 }
virtual bool loadState(const ossimKeywordlist &kwl, const char *prefix=0)
Method to the load (recreate) the state of an object from a keyword list.
T * release()
Definition: ossimRefPtr.h:93
OSSIMDLLEXPORT std::ostream & ossimNotify(ossimNotifyLevel level=ossimNotifyLevel_WARN)

◆ operator=()

void ossimMrSidReaderFactory::operator= ( const ossimMrSidReaderFactory )
protected

hidden from use copy constructor

Definition at line 187 of file ossimMrSidReaderFactory.cpp.

187 {}

Member Data Documentation

◆ theInstance

ossimMrSidReaderFactory * ossimMrSidReaderFactory::theInstance = 0
staticprotected

static instance of this class

Definition at line 109 of file ossimMrSidReaderFactory.h.

Referenced by instance(), and ~ossimMrSidReaderFactory().


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