OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
ErsSarLeader.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 ErsSarLeader_h
13 #define ErsSarLeader_h
14 
15 #include <iostream>
16 #include "ErsSarFileDescriptor.h"
17 #include "ErsSarDataSetSummary.h"
20 #include "ErsSarFacilityData.h"
21 #include <map>
22 
23 class ossimKeywordlist;
24 
25 
26 namespace ossimplugins
27 {
28 
29 class ErsSarPlatformPositionData;
30 class ErsSarMapProjectionData;
31 class ErsSarDataSetSummary;
32 class ErsSarFileDescriptor;
33 class ErsSarFacilityData;
34 
41 {
42 public:
46  ErsSarLeader();
47 
51  virtual ~ErsSarLeader();
52 
56  friend std::ostream& operator<<(std::ostream& os, const ErsSarLeader& data);
57 
62 
66  ErsSarLeader(const ErsSarLeader& rhs);
67 
71  ErsSarLeader& operator=(const ErsSarLeader& rhs);
72 
76  void ClearRecords();
77 
84  virtual bool saveState(ossimKeywordlist& kwl,
85  const char* prefix = 0) const;
86 
92 
93 protected:
94  // Made mutable because the get_* methods need to access it.
95  // (modifying the definition of the map might be another solution)
96  mutable std::map<int, ErsSarRecord*> theRecords;
97 
98  static const int ErsSarFacilityDataID;
99  static const int ErsSarPlatformPositionDataID;
100  static const int ErsSarMapProjectionDataID;
101  static const int ErsSarDataSetSummaryID;
102  static const int ErsSarFileDescriptorID;
103 private:
104 
105 };
106 }
107 
108 #endif
This class is able to read the Leader file of the ErsSar file structure.
Definition: ErsSarLeader.h:40
This class is able to read a Platform position data record.
This class is able to read the SAR leader data set summary record of the leader file.
friend std::istream & operator>>(std::istream &is, ErsSarLeader &data)
This function read a ErsSarLeader from a stream.
Represents serializable keyword/value map.
friend std::ostream & operator<<(std::ostream &os, const ErsSarLeader &data)
This function write the ErsSarLeader in a stream.
ErsSarLeader & operator=(const ErsSarLeader &rhs)
Copy operator.
const ErsSarMapProjectionData * get_ErsSarMapProjectionData() const
const ErsSarFileDescriptor * get_ErsSarFileDescriptor() const
const ErsSarDataSetSummary * get_ErsSarDataSetSummary() const
static const int ErsSarMapProjectionDataID
Definition: ErsSarLeader.h:100
static const int ErsSarPlatformPositionDataID
Definition: ErsSarLeader.h:99
This class is able to read the SAR leader data set summary record of the leader file.
const ErsSarPlatformPositionData * get_ErsSarPlatformPositionData() const
void ClearRecords()
Remove all the previous records from the ErsSarLeader.
static const int ErsSarFacilityDataID
Definition: ErsSarLeader.h:98
const ErsSarFacilityData * get_ErsSarFacilityData() const
This class is able to read the SAR leader data set summary record of the leader file.
This class is able to read the SAR leader file descriptor record of the leader file.
std::map< int, ErsSarRecord * > theRecords
Definition: ErsSarLeader.h:96
std::basic_istream< char > istream
Base class for char input streams.
Definition: ossimIosFwd.h:20
static const int ErsSarDataSetSummaryID
Definition: ErsSarLeader.h:101
virtual bool saveState(ossimKeywordlist &kwl, const char *prefix=0) const
Method to save object state to a keyword list.
virtual ~ErsSarLeader()
Destructor.
std::basic_ostream< char > ostream
Base class for char output streams.
Definition: ossimIosFwd.h:23
static const int ErsSarFileDescriptorID
Definition: ErsSarLeader.h:102