OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
dsd.h
Go to the documentation of this file.
1 //----------------------------------------------------------------------------
2 //
3 // "Copyright Centre National d'Etudes Spatiales"
4 //
5 // License: LGPL
6 //
7 // See LICENSE.txt file in the top level directory for more details.
8 //
9 //----------------------------------------------------------------------------
10 // $Id$
11 
12 #ifndef dsd_h
13 #define dsd_h
14 
15 #include <iostream>
17 
18 namespace ossimplugins
19 {
24 class dsd : public EnvisatAsarRecord
25 {
26 public:
30  dsd();
31 
35  virtual ~dsd();
36 
40  friend std::ostream& operator<<(std::ostream& os, const dsd& data);
41 
45  friend std::istream& operator>>(std::istream& is, dsd& data);
46 
50  dsd(const dsd& rhs);
51 
55  dsd& operator=(const dsd& rhs);
56 
61  {
62  return new dsd();
63  };
64 
69  {
70  return new dsd(*this);
71  };
72 
76  void Read(std::istream& is)
77  {
78  is>>*this;
79  };
80 
84  void Write(std::ostream& os)
85  {
86  os<<*this;
87  };
88 
89 
93  std::string get_ds_name()
94  {
95  return _ds_name;
96  }
100  std::string get_ds_type()
101  {
102  return _ds_type;
103  }
107  std::string get_filename()
108  {
109  return _filename;
110  }
114  double get_ds_offset()
115  {
116  return _ds_offset;
117  }
121  double get_ds_size()
122  {
123  return _ds_size;
124  }
129  {
130  return _num_dsr;
131  }
136  {
137  return _dsr_size;
138  }
139 
143  std::string _ds_name;
147  std::string _ds_type;
151  std::string _filename;
155  double _ds_offset;
159  double _ds_size;
163  int _num_dsr;
168 
169 private:
170 
171 };
172 }
173 #endif
174 
175 
int _num_dsr
Number of data set record.
Definition: dsd.h:163
dsd()
Constructor.
Definition: dsd.cpp:16
std::string _filename
Data set Filename.
Definition: dsd.h:151
int get_dsr_size()
Data set record size.
Definition: dsd.h:135
std::string get_filename()
Data set Filename.
Definition: dsd.h:107
void Write(std::ostream &os)
Write the class to a stream.
Definition: dsd.h:84
double _ds_size
Data set Size.
Definition: dsd.h:159
double _ds_offset
Data set Offset.
Definition: dsd.h:155
std::string _ds_type
Data set Type.
Definition: dsd.h:147
int _dsr_size
Data set record size.
Definition: dsd.h:167
std::string get_ds_name()
Data set Name.
Definition: dsd.h:93
void Read(std::istream &is)
Read the class data from a stream.
Definition: dsd.h:76
friend std::ostream & operator<<(std::ostream &os, const dsd &data)
This function write the dsd in a stream.
Definition: dsd.cpp:24
virtual ~dsd()
Destructor.
Definition: dsd.cpp:20
double get_ds_offset()
Data set Offset.
Definition: dsd.h:114
std::basic_istream< char > istream
Base class for char input streams.
Definition: ossimIosFwd.h:20
double get_ds_size()
Data set Size.
Definition: dsd.h:121
dsd & operator=(const dsd &rhs)
Copy operator.
Definition: dsd.cpp:145
int get_num_dsr()
Number of data set record.
Definition: dsd.h:128
This class is the base class of all the Envisat ASAR record classes.
EnvisatAsarRecord * Instanciate()
This function is able to create a new instance of the class.
Definition: dsd.h:60
std::string _ds_name
Data set Name.
Definition: dsd.h:143
EnvisatAsarRecord * Clone()
This function is able to create a new instance of the class initialised with the data of the calling ...
Definition: dsd.h:68
std::string get_ds_type()
Data set Type.
Definition: dsd.h:100
friend std::istream & operator>>(std::istream &is, dsd &data)
This function read a dsd from a stream.
Definition: dsd.cpp:37
std::basic_ostream< char > ostream
Base class for char output streams.
Definition: ossimIosFwd.h:23
This class is able to read the ASAR dsd record.
Definition: dsd.h:24