HiRISE
 PDS_JP2

PDS_Data_Block.hh
Go to the documentation of this file.
1/* PDS_Data_Block
2
3HiROC CVS ID: PDS_Data_Block.hh,v 1.9 2013/03/14 21:00:43 guym Exp
4
5Copyright (C) 2006-2007 Arizona Board of Regents on behalf of the
6Planetary Image Research Laboratory, Lunar and Planetary Laboratory at
7the University of Arizona.
8
9This program is free software; you can redistribute it and/or modify it
10under the terms of the GNU General Public License, version 2, as
11published by the Free Software Foundation.
12
13This program is distributed in the hope that it will be useful, but
14WITHOUT ANY WARRANTY; without even the implied warranty of
15MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16General Public License for more details.
17
18You should have received a copy of the GNU General Public License along
19with this program; if not, write to the Free Software Foundation, Inc.,
2059 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
21*/
22
23#ifndef _PDS_Data_Block_
24#define _PDS_Data_Block_
25
26#include "PDS_Data.hh"
27
28#include <string>
29#include <iosfwd>
30
31
32namespace UA
33{
34namespace HiRISE
35{
55: public PDS_Data
56{
57public:
58/*==============================================================================
59 Constants:
60*/
62static const char* const
64
66static const char
68
70static const char
72
73/*==============================================================================
74 Constructors:
75*/
79
90 (
92 std::ios::off_type file_offset
93 );
94
105 (
107 const std::string& filename
108 );
109
110
111/*==============================================================================
112 Accessors:
113*/
118std::ios::off_type location ()
119{return Location;}
120
125unsigned long long size ()
126{return Size;}
127
128/*==============================================================================
129 Data:
130*/
131protected:
132
134std::ios::off_type
136
138unsigned long long
140
153virtual unsigned long long data_block_size ();
154
155}; // class PDS_Data_Block
156
157} // namespace HiRISE
158} // namespace UA
159#endif
unsigned long long Size
Size of the data block in bytes.
Definition PDS_Data_Block.hh:139
std::ios::off_type location()
Get the offset location of the binary data block in the source file.
Definition PDS_Data_Block.hh:118
virtual unsigned long long data_block_size()
Calculate the size of the binary data block.
Definition PDS_Data_Block.cc:138
static const char * BLOCK_HEIGHT_PARAMETER_NAME
Name of the parameter specifying the binary block height in rows.
Definition PDS_Data_Block.hh:71
unsigned long long size()
Get the size of the data block.
Definition PDS_Data_Block.hh:125
PDS_Data_Block()
Constructs an empty PDS_Data_Block.
Definition PDS_Data_Block.cc:68
static const char * BLOCK_WIDTH_PARAMETER_NAME
Name of the parameter specifying the binary block row width in bytes.
Definition PDS_Data_Block.hh:67
std::ios::off_type Location
Offset location of the data block in the source file.
Definition PDS_Data_Block.hh:135
static const char *const ID
Class identification.
Definition PDS_Data_Block.hh:63
virtual PDS_Data & parameters(const std::string &pathname)
Set the parameters from a source file.
Definition PDS_Data.cc:305
PDS_Data()
Construct PDS_Data with no parameters.
Definition PDS_Data.cc:98
Definition Dimensions.cc:32
Definition Dimensions.cc:30