isce3  0.1.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Pages
Metadata.h
1 // -*- C++ -*-
2 // -*- coding: utf-8 -*-
3 //
4 // Source Author: Bryan Riel
5 // Copyright 2017-2019
6 
7 #pragma once
8 
9 // isce3::core
10 #include <isce3/core/EulerAngles.h>
11 #include <isce3/core/Orbit.h>
12 
13 // isce3::product
14 #include <isce3/product/ProcessingInformation.h>
15 
16 // Declarations
17 namespace isce3 {
18  namespace product {
19  class Metadata;
20  }
21 }
22 
23 // Declare Metadata class
25 
26  public:
28  inline Metadata() {}
29 
31  inline Metadata(const Metadata &);
32 
34  inline const isce3::core::EulerAngles & attitude() const { return _attitude; }
35 
37  inline isce3::core::EulerAngles & attitude() { return _attitude; }
38 
40  inline void attitude(const isce3::core::EulerAngles & att) { _attitude = att; }
41 
43  inline const isce3::core::Orbit & orbit() const { return _orbit; };
44 
46  inline isce3::core::Orbit & orbit() { return _orbit; }
47 
49  inline void orbit(const isce3::core::Orbit & orb) { _orbit = orb; };
50 
52  inline const ProcessingInformation & procInfo() const { return _procInfo; }
53 
55  inline ProcessingInformation & procInfo() { return _procInfo; }
56 
57  private:
58  // Attitude
59  isce3::core::EulerAngles _attitude;
60  // Orbit
61  isce3::core::Orbit _orbit;
62  // ProcessingInformation
64 };
65 
66 // Copy constructor
69 Metadata(const Metadata & meta) : _attitude(meta.attitude()), _orbit(meta.orbit()),
70  _procInfo(meta.procInfo()) {}
Definition: Metadata.h:24
void orbit(const isce3::core::Orbit &orb)
Set orbit.
Definition: Metadata.h:49
void attitude(const isce3::core::EulerAngles &att)
Set attitude.
Definition: Metadata.h:40
isce3::core::Orbit & orbit()
Get reference to orbit.
Definition: Metadata.h:46
const isce3::core::Orbit & orbit() const
Get read-only reference to orbit.
Definition: Metadata.h:43
Metadata()
Default constructor.
Definition: Metadata.h:28
const ProcessingInformation & procInfo() const
Get read-only reference to ProcessingInformation.
Definition: Metadata.h:52
isce3::core::EulerAngles & attitude()
Get reference to attitude.
Definition: Metadata.h:37
ProcessingInformation & procInfo()
Get reference to ProcessingInformation.
Definition: Metadata.h:55
Data structure for Euler Angle representation of attitude information.
Definition: EulerAngles.h:17
const isce3::core::EulerAngles & attitude() const
Get read-only reference to attitude.
Definition: Metadata.h:34
Sequence of platform ephemeris samples (state vectors) with uniform temporal spacing, supporting efficient lookup and interpolation.
Definition: Orbit.h:43
Definition: ProcessingInformation.h:24

Generated for ISCE3.0 by doxygen 1.8.5.