FDO API Reference Feature Data Objects

RasterDataOrganization.h

Go to the documentation of this file.
00001 #ifndef _RASTERDATAORGANIZATION_H_
00002 #define _RASTERDATAORGANIZATION_H_
00003 
00004 //
00005 // Copyright (C) 2004-2006  Autodesk, Inc.
00006 // 
00007 // This library is free software; you can redistribute it and/or
00008 // modify it under the terms of version 2.1 of the GNU Lesser
00009 // General Public License as published by the Free Software Foundation.
00010 // 
00011 // This library is distributed in the hope that it will be useful,
00012 // but WITHOUT ANY WARRANTY; without even the implied warranty of
00013 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00014 // Lesser General Public License for more details.
00015 // 
00016 // You should have received a copy of the GNU Lesser General Public
00017 // License along with this library; if not, write to the Free Software
00018 // Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
00019 //
00020 #ifdef _WIN32
00021 #pragma once
00022 #endif
00023 
00024 #include <FdoStd.h>
00025 
00026 /// \brief
00027 /// The FdoRasterDataOrganization enumeration specifies the way
00028 /// pixel data is interleaved. Data is stored/retrieved in left to right,
00029 /// and secondarily top to bottom order within the interleave order.
00030 /// Tiles are also stored/retrieved in left to right, top to bottom order.
00031 /// For tiled data, data for one tile is completely stored/retrieved before
00032 /// the next tile, so for example, with 'FdoRasterDataOrganization_Image'
00033 /// organization of RGB data with 24 bits per pixel, the TileSizeX by
00034 /// TileSizeY 8 bit data values for the red channel are stored first
00035 /// followed by the same number of green bytes, followed by the same
00036 /// number of blue bytes. This organization dependant storage should be
00037 /// considered when 'skipping' to the middle of an image.
00038 /// <param name="FdoRasterDataOrganization_Pixel">
00039 /// Data is interleaved by pixel, with all data for a pixel contiguous in memory.
00040 /// </param>
00041 /// <param name="FdoRasterDataOrganization_Row">
00042 /// Data is interleaved by row, with all data of a channel for one row contiguous in memory, followed by a rows worth of the next channel, etc.
00043 /// </param>
00044 /// <param name="FdoRasterDataOrganization_Image">
00045 /// Data is interleaved by image, with all data of a channel for a complete image contiguous in memory, followed by a complete image of the next channel, etc.
00046 /// </param>
00047 enum FdoRasterDataOrganization
00048 {
00049 
00050     /// Data is interleaved by pixel, with all data for a pixel contiguous in memory.
00051     FdoRasterDataOrganization_Pixel,
00052 
00053     /// Data is interleaved by row, with all data of a channel for one row
00054     /// contiguous in memory, followed by a rows worth of the next channel, etc.
00055     FdoRasterDataOrganization_Row,
00056 
00057     /// Data is interleaved by image, with all data of a channel for a complete
00058     /// image contiguous in memory, followed by a complete image of the next
00059     /// channel, etc.
00060     FdoRasterDataOrganization_Image
00061 };
00062 
00063 #endif // _RASTERDATAORGANIZATION_H_
00064 
00065 

Comments or suggestions? Send us feedback.