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
ossimPngReaderFactory Class Reference

Factory for PNG image reader. More...

#include <ossimPngReaderFactory.h>

Inheritance diagram for ossimPngReaderFactory:
ossimImageHandlerFactoryBase ossimObjectFactory ossimObject ossimReferenced

Public Member Functions

virtual ~ossimPngReaderFactory ()
 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 ossimRefPtr< ossimImageHandleropen (std::shared_ptr< ossim::istream > &str, const ossimString &connectionString, bool openOverview) const
 Open method that takes a stream. More...
 
virtual ossimObjectcreateObject (const ossimString &typeName) const
 createObject that takes a class name (ossimPngReader) 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 ossimPngWriter to the typeList. More...
 
virtual void getSupportedExtensions (ossimImageHandlerFactoryBase::UniqueStringList &extensionList) const
 Method to add supported extension to the list, like "png". 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 ossimPngReaderFactoryinstance ()
 static method to return instance (the only one) of this class. More...
 

Protected Member Functions

 ossimPngReaderFactory ()
 hidden from use default constructor More...
 
 ossimPngReaderFactory (const ossimPngReaderFactory &)
 hidden from use copy constructor More...
 
void operator= (const ossimPngReaderFactory &)
 hidden from use copy constructor More...
 
- Protected Member Functions inherited from ossimReferenced
virtual ~ossimReferenced ()
 

Static Protected Attributes

static ossimPngReaderFactorytheInstance = 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 PNG image reader.

Definition at line 22 of file ossimPngReaderFactory.h.

Constructor & Destructor Documentation

◆ ~ossimPngReaderFactory()

ossimPngReaderFactory::~ossimPngReaderFactory ( )
virtual

virtual destructor

Definition at line 29 of file ossimPngReaderFactory.cpp.

References theInstance.

30 {
31  theInstance = 0;
32 }
static ossimPngReaderFactory * theInstance
static instance of this class

◆ ossimPngReaderFactory() [1/2]

ossimPngReaderFactory::ossimPngReaderFactory ( )
protected

hidden from use default constructor

Definition at line 188 of file ossimPngReaderFactory.cpp.

Referenced by instance().

188 {}

◆ ossimPngReaderFactory() [2/2]

ossimPngReaderFactory::ossimPngReaderFactory ( const ossimPngReaderFactory )
protected

hidden from use copy constructor

Definition at line 190 of file ossimPngReaderFactory.cpp.

190 {}

Member Function Documentation

◆ createObject() [1/2]

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

createObject that takes a class name (ossimPngReader)

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

Implements ossimObjectFactory.

Definition at line 140 of file ossimPngReaderFactory.cpp.

References ossimRefPtr< T >::release().

142 {
143  ossimRefPtr<ossimObject> result = 0;
144  if(typeName == "ossimPngReader")
145  {
146  result = new ossimPngReader;
147  }
148  return result.release();
149 }
T * release()
Definition: ossimRefPtr.h:93

◆ createObject() [2/2]

ossimObject * ossimPngReaderFactory::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 151 of file ossimPngReaderFactory.cpp.

References open().

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

◆ getImageHandlersByMimeType()

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

Reimplemented from ossimImageHandlerFactoryBase.

Definition at line 178 of file ossimPngReaderFactory.cpp.

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

180 {
181  ossimString testExt = mimeType.downcase();
182  if(testExt == "image/png")
183  {
184  result.push_back(new ossimPngReader);
185  }
186 }
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 ossimPngReaderFactory::getImageHandlersBySuffix ( ossimImageHandlerFactoryBase::ImageHandlerList result,
const ossimString ext 
) const
virtual

Reimplemented from ossimImageHandlerFactoryBase.

Definition at line 168 of file ossimPngReaderFactory.cpp.

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

170 {
171  ossimString testExt = ext.downcase();
172  if(ext == "png")
173  {
174  result.push_back(new ossimPngReader);
175  }
176 }
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 ossimPngReaderFactory::getSupportedExtensions ( ossimImageHandlerFactoryBase::UniqueStringList extensionList) const
virtual

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

Parameters
extensionListThe list to add to.

Implements ossimImageHandlerFactoryBase.

Definition at line 162 of file ossimPngReaderFactory.cpp.

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

164 {
165  extensionList.push_back(ossimString("png"));
166 }

◆ getTypeNameList()

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

Adds ossimPngWriter to the typeList.

Parameters
typeListList to add to.

Implements ossimObjectFactory.

Definition at line 157 of file ossimPngReaderFactory.cpp.

158 {
159  typeList.push_back(ossimString("ossimPngReader"));
160 }

◆ instance()

ossimPngReaderFactory * ossimPngReaderFactory::instance ( )
static

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

Returns
pointer to instance of this class.

Definition at line 34 of file ossimPngReaderFactory.cpp.

References ossimPngReaderFactory(), and theInstance.

Referenced by ossimSharedLibraryFinalize().

35 {
36  if(!theInstance)
37  {
39  }
40  return theInstance;
41 }
static ossimPngReaderFactory * theInstance
static instance of this class
ossimPngReaderFactory()
hidden from use default constructor

◆ open() [1/3]

ossimImageHandler * ossimPngReaderFactory::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 43 of file ossimPngReaderFactory.cpp.

Referenced by createObject().

45 {
46  if(traceDebug())
47  {
49  << "ossimPngReaderFactory::open(filename) DEBUG: entered..."
50  << "\ntrying ossimPngReader"
51  << std::endl;
52  }
53 
56  if(reader->open(fileName) == false)
57  {
58  reader = 0;
59  }
60 
61  if(traceDebug())
62  {
64  << "ossimPngReaderFactory::open(filename) DEBUG: leaving..."
65  << std::endl;
66  }
67 
68  return reader.release();
69 }
virtual bool open()=0
Pure virtual open.
void setOpenOverviewFlag(bool flag)
Sets theOpenOverviewFlag.
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/3]

ossimImageHandler * ossimPngReaderFactory::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 71 of file ossimPngReaderFactory.cpp.

73 {
74  if(traceDebug())
75  {
77  << "ossimPngReaderFactory::open(kwl, prefix) DEBUG: entered..."
78  << "Trying ossimPngReader"
79  << std::endl;
80  }
81 
83  if(reader->loadState(kwl, prefix) == false)
84  {
85  reader = 0;
86  }
87 
88  if(traceDebug())
89  {
91  << "ossimPngReaderFactory::open(kwl, prefix) DEBUG: leaving..."
92  << std::endl;
93  }
94 
95  return reader.release();
96 }
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)

◆ open() [3/3]

ossimRefPtr< ossimImageHandler > ossimPngReaderFactory::open ( std::shared_ptr< ossim::istream > &  str,
const ossimString connectionString,
bool  openOverview 
) const
virtual

Open method that takes a stream.

Parameters
strOpen stream to image.
connectionString
openOverviewIf true attempt to open overview file.
Returns
ossimImageHandler

Definition at line 98 of file ossimPngReaderFactory.cpp.

References ossimRefPtr< T >::get(), ossimPngReader::open(), ossimImageHandlerFactoryBase::openOverview(), and ossimImageHandler::setOpenOverviewFlag().

102 {
104 
105  // PNG:
108  if ( ih->open( str, connectionString ) )
109  {
110  result = ih.get();
111  }
112  else
113  {
114  // Reset the stream for downstream code.
115  str->seekg(0, std::ios_base::beg);
116  str->clear();
117  }
118 
119  return result;
120 }
void setOpenOverviewFlag(bool flag)
Sets theOpenOverviewFlag.
virtual bool open(std::shared_ptr< ossim::istream > &str, const std::string &connectionString)
This open takes a stream and stores/captures the shared pointer on success.
virtual ossimRefPtr< ossimImageHandler > openOverview(const ossimFilename &file) const
Open overview that takes a file name.

◆ operator=()

void ossimPngReaderFactory::operator= ( const ossimPngReaderFactory )
protected

hidden from use copy constructor

Definition at line 192 of file ossimPngReaderFactory.cpp.

192 {}

Member Data Documentation

◆ theInstance

ossimPngReaderFactory * ossimPngReaderFactory::theInstance = 0
staticprotected

static instance of this class

Definition at line 132 of file ossimPngReaderFactory.h.

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


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