HiRISE
 PDS_JP2

PDS_Data_Block.hh

Go to the documentation of this file.
00001 /*  PDS_Data_Block
00002 
00003 HiROC CVS ID: PDS_Data_Block.hh,v 1.8 2007/08/06 07:53:52 castalia Exp
00004 
00005 Copyright (C) 2006-2007 Arizona Board of Regents on behalf of the
00006 Planetary Image Research Laboratory, Lunar and Planetary Laboratory at
00007 the University of Arizona.
00008 
00009 This program is free software; you can redistribute it and/or modify it
00010 under the terms of the GNU General Public License, version 2, as
00011 published by the Free Software Foundation.
00012 
00013 This program is distributed in the hope that it will be useful, but
00014 WITHOUT ANY WARRANTY; without even the implied warranty of
00015 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
00016 General Public License for more details.
00017 
00018 You should have received a copy of the GNU General Public License along
00019 with this program; if not, write to the Free Software Foundation, Inc.,
00020 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
00021 */
00022 
00023 #ifndef _PDS_Data_Block_
00024 #define _PDS_Data_Block_
00025 
00026 #include    "PDS_Data.hh"
00027 
00028 #include    <string>
00029 #include    <iosfwd>
00030 
00031 
00032 namespace UA
00033 {
00034 namespace HiRISE
00035 {
00054 class PDS_Data_Block
00055 :   public PDS_Data
00056 {
00057 public:
00058 /*==============================================================================
00059     Constants:
00060 */
00062 static const char* const
00063     ID;
00064 
00066 static const char
00067     *BLOCK_WIDTH_PARAMETER_NAME;
00068 
00070 static const char
00071     *BLOCK_HEIGHT_PARAMETER_NAME;
00072 
00073 /*==============================================================================
00074     Constructors:
00075 */
00078 PDS_Data_Block ();
00079 
00089 PDS_Data_Block 
00090     (
00091     const idaeim::PVL::Aggregate&   parameters, 
00092     std::ios::off_type              file_offset
00093     );
00094 
00095 /*==============================================================================
00096     Accessors:
00097 */
00102 std::ios::off_type location ()
00103 {return Location;}
00104 
00109 unsigned long long size ()
00110 {return Size;}
00111 
00112 /*==============================================================================
00113     Data:
00114 */
00115 protected:
00116 
00118 std::ios::off_type
00119     Location;
00120 
00122 unsigned long long
00123     Size;
00124 
00137 virtual unsigned long long data_block_size ();
00138 
00139 };  //  class PDS_Data_Block
00140 
00141 }   //  namespace HiRISE
00142 }   //  namespace UA
00143 #endif

Generated on Tue Jul 15 14:22:43 2008 for UA::HiRISE::PDS_JP2 by  doxygen 1.4.6