39 static ossimTrace traceDebug(
"ossimQbTileFilesHandler:debug");
63 static const char* MODULE =
"ossimQbTileFilesHandler::open() -- ";
67 <<MODULE <<
"Entering...\nimage: " <<
theImageFile <<
"\n";
102 ossimQuickbirdTile::TileMap::const_iterator qbt_iter = qbtTileMap.begin();
104 while (qbt_iter != qbtTileMap.end())
122 subImageRect.
set_ulx((*qbt_iter).second.theUlXOffset);
123 subImageRect.
set_uly((*qbt_iter).second.theUlYOffset);
124 subImageRect.
set_lrx((*qbt_iter).second.theLrXOffset);
125 subImageRect.
set_lry((*qbt_iter).second.theLrYOffset);
134 "to tile-files list."<<std::endl;
140 <<tilefile.
tileFilename<<
"> as one of the tiles, but the file could not be opened. " 141 <<
"This is being ignored but may cause a problem downstream."<<std::endl;
165 bool open_good =
false;
208 if ( imd_file.
exists() == false )
220 createProjection( kwl, 0 );
258 if (image_size.hasNans())
261 ossimIpt full_image_lr (image_size.x-1, image_size.y-1);
272 while (((dx == 0) || (dy == 0)) && (i < num_tiles-1))
282 if ((dx == 0) || (dy == 0))
291 dy =
m_tileFiles[0].imageHandler->getNumberOfLines();
292 dx =
m_tileFiles[0].imageHandler->getNumberOfSamples();
297 if ((dx == 0) && (dy == 0))
307 for (i=0; i<num_tiles; i++)
313 if (lr.
x > full_image_lr.
x)
314 lr.
x = full_image_lr.
x;
315 if (lr.
y > full_image_lr.
y)
316 lr.
y = full_image_lr.
y;
void set_uly(ossim_int32 y)
ossimRefPtr< ossimImageGeometry > theGeometry
ossimRefPtr< ossimImageHandler > imageHandler
void setProjection(ossimProjection *projection)
Sets the projection to be used for local-to-world coordinate transformation.
ossimFilename theImageFile
virtual ossimImageHandler * open(const ossimFilename &fileName, bool trySuffixFirst=true, bool openOverview=true) const
open that takes a filename.
bool open(const ossimFilename tileFile)
Represents serializable keyword/value map.
ossimFilename & setPath(const ossimString &p)
static ossimString toString(bool aValue)
Numeric to string methods.
const ossimIpt & ul() const
const std::map< std::string, ossimQuickbirdTileInfo > & getMap() const
This class defines an abstract Handler which all image handlers(loaders) should derive from...
ossimImageHandlerRegistry supports the new state cache.
virtual ~ossimQbTileFilesHandler()
Destructor:
virtual bool open()
Opens the image file given entry index.
static ossimString downcase(const ossimString &aString)
void initImageParameters(ossimImageGeometry *geom) const
Convenience method to set things needed in the image geometry from the image handler.
std::map< std::string, ossimQuickbirdTileInfo > TileMap
Container class that holds both 2D transform and 3D projection information for an image Only one inst...
virtual ossimRefPtr< ossimImageGeometry > getImageGeometry()
Fetch the tile-files common RPC data file and create the projection for this image.
static ossimProjectionFactoryRegistry * instance()
virtual ossimRefPtr< ossimImageGeometry > getExternalImageGeometry() const
Returns the image geometry object associated with this tile source or NULL if non defined...
void set_lrx(ossim_int32 x)
Class for record of one tile file:
virtual void completeOpen()
Will complete the opening process.
void set_lr(const ossimIpt &pt)
virtual ossimErrorCode getErrorStatus() const
void set_lry(ossim_int32 y)
void setTransform(ossim2dTo2dTransform *transform)
Sets the transform to be used for local-to-full-image coordinate transformation.
Image handler used for tiled Quickbird imagery.
const char * c_str() const
Returns a pointer to a null-terminated array of characters representing the string's contents...
vector< ossimTileFile > m_tileFiles
static ossimImageHandlerRegistry * instance()
#define RTTI_DEF1(cls, name, b1)
ossimFilename & setExtension(const ossimString &e)
Sets the extension of a file name.
ossimQbTileFilesHandler()
Constructor (default):
ossimIrect combine(const ossimIrect &rect) const
ossimFilename path() const
bool computeImageRects()
Initializes tile image rects by considering adjacent row/col offsets.
ossimFilename tileFilename
OSSIMDLLEXPORT std::ostream & ossimNotify(ossimNotifyLevel level=ossimNotifyLevel_WARN)
void set_ulx(ossim_int32 x)
vector< ossimIrect > subImageRects