MrSID Decode SDK for Raster Reference Manual  9.5.1.4427
lti_imageStageManager.h
Go to the documentation of this file.
00001 /* $Id$ */
00002 /* //////////////////////////////////////////////////////////////////////////
00003 //                                                                         //
00004 // This code is Copyright (c) 2004 LizardTech, Inc, 1008 Western Avenue,   //
00005 // Suite 200, Seattle, WA 98104.  Unauthorized use or distribution         //
00006 // prohibited.  Access to and use of this code is permitted only under     //
00007 // license from LizardTech, Inc.  Portions of the code are protected by    //
00008 // US and foreign patents and other filings. All Rights Reserved.          //
00009 //                                                                         //
00011 /* PUBLIC */
00012 
00013 #ifndef LTI_IMAGESTAGEMANAGER_H
00014 #define LTI_IMAGESTAGEMANAGER_H
00015 
00016 // lt_lib_mrsid_core
00017 #include "lti_imageStage.h"
00018 
00019 
00020 LT_BEGIN_NAMESPACE(LizardTech)
00021 
00022 
00033 class LTIImageStageManager : public LTIReferenceCountedObject
00034 {
00035    LTI_REFERENCE_COUNTED_BOILERPLATE_BASE(LTIImageStageManager);
00036 public:
00046    virtual LT_STATUS createImageProps(lt_uint32 imageNumber,
00047                                       LTIImage *&imageProps);
00048    
00058    // HACK to get SWIG working
00059 #ifndef SWIG
00060    virtual LT_STATUS createImageStage(lt_uint32 imageNumber,
00061                                       LTIImageStage *&imageStage);
00062 #endif
00063    virtual LTIImageStage *createImageStage(lt_uint32 imageNumber);
00064 
00068    lt_uint32 getNumImages(void) const;
00069 
00077    virtual LT_STATUS createOverviewImageStage(LTIImageStage *&imageStage);
00078 
00079 protected:
00083    virtual void setNumImages(lt_uint32 numImages);
00084 
00085 private:
00086    lt_uint32 m_numImages;
00087 };
00088 
00089 #ifndef DOXYGEN_EXCLUDE
00090 
00091 class LTIImageStageManager2 : public LTIImageStageManager
00092 {
00093    LTI_REFERENCE_COUNTED_BOILERPLATE_BASE(LTIImageStageManager2);
00094 public:
00095    // HACK to get SWIG working
00096 #ifndef SWIG
00097 
00103    virtual LT_STATUS getImageName(lt_uint32 imageNumber,
00104                                   LTFileSpec &imageName);
00105 
00112    virtual LT_STATUS getSupportFileBaseName(lt_uint32 imageNumber,
00113                                             LTFileSpec &baseName);
00114 #endif
00115    virtual LTFileSpec getImageName(lt_uint32 imageNumber);
00116    virtual LTFileSpec getSupportFileBaseName(lt_uint32 imageNumber);
00117 
00118 protected:
00119    virtual void setNumImages(lt_uint32 numImages)
00120    {
00121       LTIImageStageManager::setNumImages(numImages);
00122    }
00123    
00124 };
00125 
00126 #endif
00127 
00128 LT_END_NAMESPACE(LizardTech)
00129 
00130 #endif // LTI_IMAGESTAGEMANAGER_H