00001
00057 #ifndef INC_SPATMOD_IMAGETARGETTILESETMICROSOFTBING_H
00058 #define INC_SPATMOD_IMAGETARGETTILESETMICROSOFTBING_H
00059
00060 #ifndef INC_SPATMOD_IMAGETARGETTILESETFILE_H
00061 #include <spatmod/imagetargettilesetfile.h>
00062 #endif
00063
00064 class MISTATUSCONTEXT;
00065
00066 namespace SPATMOD {
00067 namespace IMAGE {
00068
00069
00070
00072 class TARGET_TILESET_MICROSOFTBING : public TARGET_TILESET_FILE {
00073 public:
00074
00076 static ERRVALUE CreateHTML (
00077 TILESET& Tileset,
00078 bool bOverwriteExisting = true,
00079 INT32 MinLevel = -1
00080 );
00081
00083 static ERRVALUE ComputeReducedLevel (
00084 TILESET& Tileset,
00085 INT32 level,
00086 MISTRING message = TEXTID_Creating_ResolutionLevelN
00087 );
00088
00090 static ERRVALUE ComputeReducedLevel (
00091 TILESET& Tileset,
00092 const FILEPATH& SourcePath,
00093 const FILEPATH& TargetPath,
00094 INT32 level,
00095 MISTRING message = TEXTID_Creating_ResolutionLevelN
00096 );
00097
00099 static ERRVALUE ComputeReducedLevel (
00100 TILESET& Tileset,
00101 INT32 level,
00102 TILESET::IMGFORMAT ImgFormat = TILESET::IMGFORMAT_Invalid,
00103 UINT16 QualityJPEG = 75,
00104 MISTRING message = TEXTID_Creating_ResolutionLevelN,
00105 bool bZipOutput = false
00106 );
00107
00109 static ERRVALUE ComputeReducedLevel (
00110 TILESET& Tileset,
00111 const FILEPATH& SourcePath,
00112 const FILEPATH& TargetPath,
00113 INT32 level,
00114 TILESET::IMGFORMAT ImgFormat,
00115 const IMAGE::PIXEL& PixelProperties,
00116 UINT16 QualityJPEG = 75,
00117 MISTRING message = TEXTID_Creating_ResolutionLevelN,
00118 bool bZipOutput = false,
00119 RESAMPLEMETHOD ResampleMethod = RESAMPLEMETHOD_Nearest
00120 );
00121
00123 TARGET_TILESET_MICROSOFTBING (
00124 STAGE *pInputStage,
00125 TILESET::IMGFORMAT format,
00126 const FILEPATH& filepath,
00127 INT32 TileSize,
00128 INT32 MinLevel,
00129 INT32 MaxLevel
00130 );
00131
00133 virtual ~TARGET_TILESET_MICROSOFTBING ();
00134
00136 void SetParmsJPEG (
00137 INT16 quality
00138 ) { m_QualityJPEG = quality; }
00139
00140 private:
00141 #ifndef GENERATING_DOXYGEN_OUTPUT
00142
00143 class IMAGEMICROSOFTBING;
00144
00145 FILEPATH m_basepath;
00146 UINT16 m_QualityJPEG;
00147 MISTATUSCONTEXT *m_pStatusContext;
00148
00149
00150 virtual ERRVALUE v_Initialize ();
00151 virtual ERRVALUE v_PushBegin (const SECTION_ITERATOR& iterator);
00152 virtual ERRVALUE v_PushEnd ();
00153
00154
00155 ERRVALUE v_CreateTargetFile (IMAGE::STAGE *pStageInput, const FILEPATH& filepath, const IMAGE::FORMAT& format, IMAGE::TARGET_FILE *& pTargetFile) const;
00156 const IMAGE::FORMAT* v_FindTileFile (FILEPATH& filepath, const LPOINT3D& TileIdx) const;
00157 ERRVALUE v_GenerateTileFilePath (FILEPATH& filepath, const LPOINT3D& TileIdx, bool HasNullCells, bool CreateFolder) const;
00158
00159
00160 TARGET_TILESET_MICROSOFTBING (const TARGET_TILESET_MICROSOFTBING&);
00161 TARGET_TILESET_MICROSOFTBING& operator= (const TARGET_TILESET_MICROSOFTBING&);
00162 #endif // GENERATING_DOXYGEN_OUTPUT
00163
00164 };
00165
00166
00167
00168 }
00169 }
00170
00171 #endif // INC_SPATMOD_IMAGETARGETTILESETMICROSOFTBING_H
00172