Isis 3.0
Back | Home
GuiCamera.h
Go to the documentation of this file.
1 #ifndef GuiCamera_h
2 #define GuiCamera_h
3 
27 #include <vector>
28 #include <QList>
29 #include <QObject>
30 #include <QSharedPointer>
31 #include <QString>
32 #include <SpiceUsr.h>
33 #include <SpiceZfc.h>
34 #include <SpiceZmc.h>
35 #include "XmlStackedHandler.h"
36 
37 class QDataStream;
38 class QUuid;
39 class QXmlStreamWriter;
40 
41 namespace Isis {
42 
43  class Camera;
44  class FileName;
45  class GuiCameraDisplayProperties;
46  class Project; // TODO: does xml stuff need project???
47  class PvlObject;
48  class XmlStackedHandlerReader;
49 
70  class GuiCamera : public QObject {
71  Q_OBJECT
72  public:
73  GuiCamera(Camera *camera, QObject *parent = 0);
74 // GuiCamera(Project *project, XmlStackedHandlerReader *xmlReader,
75 // QObject *parent = 0); // TODO: does xml stuff need project???
76  ~GuiCamera();
77 
78  bool operator==(const GuiCamera &srcGuiCamera) const;
79 
80  //GuiCameraDisplayProperties *displayProperties();
82 
83  QString id() const;
84 
85 // Camera *camera();
86 
87  QString instrumentNameShort();
88  QString instrumentNameLong();
89  QString spacecraftNameShort();
90  QString spacecraftNameLong();
91 
92 // void deleteFromDisk();
93 
94 // SpiceInt naifBodyCode() const;
95 // Distance radiusA() const;
96 // Distance radiusB() const;
97 // Distance radiusC() const;
98 // Distance meanRadius() const;
99 // Distance sigmaRadiusA() const;
100 // Distance sigmaRadiusB() const;
101 // Distance sigmaRadiusC() const;
102 // Distance sigmaMeanRadius() const;
103 
104 // void save(QXmlStreamWriter &stream, const Project *project, FileName newProjectRoot) const;
105 // TODO: does xml stuff need project and newRoot???
106 // void save(QXmlStreamWriter &stream, const Project *project) const;
107 // TODO: does xml stuff need project???
108 
109 // QDataStream &write(QDataStream &stream) const;
110 // QDataStream &read(QDataStream &stream);
111 
112 // void savehdf5(FileName outputfilename) const;
113 
114  private:
121 // class XmlHandler : public XmlStackedHandler {
122 // public:
123 // XmlHandler(GuiCamera *GuiCamera, Project *project); // TODO: does xml stuff need project???
124 // ~XmlHandler();
125 
126 // virtual bool startElement(const QString &namespaceURI, const QString &localName,
127 // const QString &qName, const QXmlAttributes &atts);
128 // virtual bool characters(const QString &ch);
129 // virtual bool endElement(const QString &namespaceURI, const QString &localName,
130 // const QString &qName);
131 
132 // private:
133 // Q_DISABLE_COPY(XmlHandler);
134 
135 // GuiCamera *m_xmlHandlerGuiCamera;
136 // Project *m_xmlHandlerProject; // TODO: does xml stuff need project???
137 // QString m_xmlHandlerCharacters;
138 // };
139 
140  private:
141  GuiCamera(const GuiCamera &other); // NOTE: copy constructor & assignment operators
142  GuiCamera &operator=(const GuiCamera &src); // are private so compiler will generate error
143  // if trying to use them (because parent is
144  // QObject which uses Q_DISABLE_COPY macro
145 
150  QUuid *m_id;
151 
155 // Camera *m_camera;
156 
160 // std::vector<Distance> m_sigmaRadii;
161 
165  GuiCameraDisplayProperties *m_displayProperties;
166 
167 
168 
169  QString m_spacecraftNameShort;
170 
171 
172  QString m_spacecraftNameLong;
173 
174 
175  QString m_instrumentNameShort;
176 
177 
178  QString m_instrumentNameLong;
179  };
180 
188  typedef QSharedPointer<GuiCamera> GuiCameraQsp;
189 
190  // operators to read/write GuiCamera to/from binary data
191  QDataStream &operator<<(QDataStream &stream, const GuiCamera &GuiCamera);
192  QDataStream &operator>>(QDataStream &stream, GuiCamera &GuiCamera);
193 };
194 
196 
197 #endif // GuiCamera_h
QString id() const
This returns the NAIF body code of the target.
Definition: GuiCamera.cpp:411
bool operator==(const GuiCamera &srcGuiCamera) const
Compares two Target Body objects to see if they are equal.
Definition: GuiCamera.cpp:115
QString spacecraftNameLong()
Retrieves the full name of the spacecraft.
Definition: GuiCamera.cpp:443
Q_DECLARE_METATYPE(Isis::Cube *)
This allows Cube *&#39;s to be stored in a QVariant.
Container class for GuiCamera.
Definition: GuiCamera.h:70
QString spacecraftNameShort()
Retrieves an abbbreviated name for the spacecraft.
Definition: GuiCamera.cpp:435
~GuiCamera()
The Destructor.
Definition: GuiCamera.cpp:91
Definition: Camera.h:240
const GuiCameraDisplayProperties * displayProperties() const
Retrieves the display properties of the camera.
Definition: GuiCamera.cpp:135
std::istream & operator>>(std::istream &is, CSVReader &csv)
Input read operator for input stream sources.
Definition: CSVReader.cpp:463
GuiCamera(Camera *camera, QObject *parent=0)
The constructor for this class.
Definition: GuiCamera.cpp:29
QString instrumentNameShort()
Retrieves an abbreviated version for the name of the instrument.
Definition: GuiCamera.cpp:419
QSharedPointer< GuiCamera > GuiCameraQsp
GuiCameraQsp Represents a smart pointer to a GuiCamera object.
Definition: GuiCamera.h:188
This is the GUI communication mechanism for target body objects.
Definition: GuiCameraDisplayProperties.h:76
QString instrumentNameLong()
Retrieves a long version for the name of the instrument.
Definition: GuiCamera.cpp:427
QDebug operator<<(QDebug debug, const Hillshade &hillshade)
Print this class out to a QDebug object.
Definition: Hillshade.cpp:308

U.S. Department of the Interior | U.S. Geological Survey
ISIS | Privacy & Disclaimers | Astrogeology Research Program
To contact us, please post comments and questions on the ISIS Support Center
File Modified: 07/12/2023 23:18:57