16 #ifndef ossimImageHandler_HEADER 17 #define ossimImageHandler_HEADER 1 41 OSSIM_OVERVIEW_COMPRESSION_NONE= 0,
45 OSSIM_OVERVIEW_COMPRESSION_PACKBITS
71 virtual bool openOverview();
82 virtual bool openOverview(
const ossimFilename& overview_file);
89 virtual void closeOverview();
101 virtual bool hasOverviews()
const;
121 virtual ossimFilename createDefaultHistogramFilename()
const;
126 virtual ossimFilename createDefaultValidVerticesFilename()
const;
137 virtual bool writeValidImageVertices(
const std::vector<ossimIpt>& vertices,
146 virtual bool openValidVertices(
const ossimFilename& vertices_file);
153 virtual bool openValidVertices();
165 virtual bool open() = 0;
180 virtual bool open(std::shared_ptr<ossim::ImageHandlerState> state);
185 virtual void close();
192 virtual bool isOpen()
const=0;
204 virtual bool buildHistogram(
217 virtual bool buildAllHistograms(
226 virtual bool buildOverview(ossimImageHandlerOverviewCompressionType compressionType = OSSIM_OVERVIEW_COMPRESSION_NONE,
229 bool includeFullResFlag=
false);
237 virtual bool buildAllOverviews(ossimImageHandlerOverviewCompressionType compressionType = OSSIM_OVERVIEW_COMPRESSION_NONE,
240 bool includeFullResFlag=
false);
250 ossimImageHandlerOverviewCompressionType compressionType = OSSIM_OVERVIEW_COMPRESSION_NONE,
253 bool includeFullResFlag=
false);
399 const char* prefix=0)
const;
406 const char* prefix=0);
417 virtual bool isValidRLevel(
ossim_uint32 resLevel)
const;
445 virtual bool isBandSelector()
const;
458 virtual bool setOutputBandList(
const std::vector<ossim_uint32>& band_list);
468 virtual bool setOutputToInputBandList();
475 virtual bool isIdentityBandList(
const std::vector<ossim_uint32>& bandList )
const;
484 virtual bool isImageTiled()
const;
502 virtual bool hasMetaData()
const;
506 virtual bool hasLut()
const;
514 virtual void loadMetaData();
589 std::string& name )
const;
596 virtual void getEntryList(std::vector<ossim_uint32>& entryList)
const;
606 virtual void getEntryNames(std::vector<ossimString>& entryNames)
const;
619 bool useEntryIndex()
const;
635 virtual void getPropertyNames(std::vector<ossimString>& propertyNames)
const;
666 bool set_e0_prefix=
false)
const;
684 void getFilenameWithThisExt(
const ossimString& ext,
692 bool getOpenOverviewFlag()
const;
701 void setOpenOverviewFlag(
bool flag);
706 virtual void setSupplementaryDirectory(
const ossimFilename& dir);
711 virtual const ossimFilename& getSupplementaryDirectory()
const;
733 virtual bool getRgbBandList(std::vector<ossim_uint32>& bandList)
const;
737 std::shared_ptr<T>
getStateAs(){
return dynamic_pointer_cast<T> (m_state);}
739 std::shared_ptr<const T>
getStateAs()
const{
return dynamic_pointer_cast<
const T> (m_state);}
740 std::shared_ptr<ossim::ImageHandlerState>
getState(){
return m_state;}
741 std::shared_ptr<const ossim::ImageHandlerState>
getState()
const{
return m_state;}
742 void setState(std::shared_ptr<ossim::ImageHandlerState> state){m_state = state;}
781 bool initVertices(
const char* file);
789 virtual void completeOpen();
805 virtual void establishDecimationFactors();
817 virtual bool setOutputBandList(
const std::vector<ossim_uint32>& inBandList,
818 std::vector<ossim_uint32>& outBandList);
856 std::shared_ptr<ossim::ImageHandlerState>
m_state;
virtual ossimIrect getBoundingRect(ossim_uint32 resLevel=0) const
This will return the bounding rect of the source.
ossimRefPtr< ossimImageGeometry > theGeometry
ossimFilename theImageFile
ossimImageHandlerOverviewCompressionType
Represents serializable keyword/value map.
void setState(std::shared_ptr< ossim::ImageHandlerState > state)
virtual bool loadState(const ossimKeywordlist &kwl, const char *prefix=0)
Method to the load (recreate) the state of an object from a keyword list.
std::vector< ossimDpt > theDecimationFactors
std::shared_ptr< ossim::ImageHandlerState > m_state
bool theOpenOverviewFlag
If true opening of overviews will be attempted.
std::shared_ptr< ossim::ImageHandlerState > getState()
virtual ossim_uint32 getNumberOfDecimationLevels() const
Will return the number of resolution levels.
std::shared_ptr< const ossim::ImageHandlerState > getState() const
ossimFilename theSupplementaryDirectory
ossimPixelType thePixelType
std::shared_ptr< T > getStateAs()
virtual double getMinPixelValue(ossim_uint32 band=0) const
Returns the min pixel of the band.
virtual void setProperty(ossimRefPtr< ossimProperty > property)
virtual void setImageGeometry(const ossimImageGeometry *geom)
Default implementation sets geometry of the first input to the geometry specified.
virtual void getPropertyNames(std::vector< ossimString > &propertyNames) const
virtual void saveImageGeometry() const
Default method to call input's saveImageGeometry.
virtual void getValidImageVertices(std::vector< ossimIpt > &validVertices, ossimVertexOrdering ordering=OSSIM_CLOCKWISE_ORDER, ossim_uint32 resLevel=0) const
ordering specifies how the vertices should be arranged.
unsigned int ossim_uint32
ossimPixelType getPixelType() const
Returns the raster pixel alignment type.
vector< ossimIpt > theValidImageVertices
virtual ossimRefPtr< ossimImageGeometry > getImageGeometry()
Returns the image geometry object associated with this tile source or NULL if not defined...
Container class that holds both 2D transform and 3D projection information for an image Only one inst...
ossimImageMetaData theMetaData
ossimRefPtr< ossimImageHandler > theOverview
This class defines an abstract Handler which all image handlers(loaders) should derive from...
virtual double getMaxPixelValue(ossim_uint32 band=0) const
Returns the max pixel of the band.
virtual bool saveState(ossimKeywordlist &kwl, const char *prefix=0) const
Method to save the state of an object to a keyword list.
void setImageID(const ossimString &id)
Sets the image ID in case it is externally generated.
virtual ossimRefPtr< ossimProperty > getProperty(const ossimString &name) const
ossimFilename theOverviewFile
virtual void initialize()=0
ossimRefPtr< ossimNBandLutDataObject > theLut
virtual bool canConnectMyInputTo(ossim_int32 myInputIndex, const ossimConnectableObject *object) const =0
required to be overriden by derived classes
virtual void getDecimationFactor(ossim_uint32 resLevel, ossimDpt &result) const
Will return the decimation factor for the given resolution level.
const ossimString & getImageID() const
Fetches the image ID.
virtual double getNullPixelValue(ossim_uint32 band=0) const
Each band has a null pixel associated with it.
std::shared_ptr< const T > getStateAs() const
virtual void getDecimationFactors(std::vector< ossimDpt > &decimations) const
Will return an array of all decimations for each resolution level.
ossim_uint32 theStartingResLevel
theStartingResLevel If set to something other than zero(default) this is indicative that the reader i...