1 #ifndef ControlNetVersioner_h 2 #define ControlNetVersioner_h 29 #include <QSharedPointer> 45 class ControlPointV0001;
46 class ControlPointV0002;
47 class ControlPointV0003;
433 QString
netId()
const;
ControlMeasure * createMeasure(const ControlPointFileEntryV0002_Measure &)
Create a pointer to a ControlMeasure from a V0006 file.
~ControlNetVersioner()
Destroy a ControlNetVersioner.
QString creationDate() const
Returns the date and time that the network was created.
File name manipulation and expansion.
Pvl toPvl()
Generates a Pvl file from the currently stored control points and header.
QString lastModificationDate() const
Returns the date and time of the last modification to the network.
void writeHeader(std::fstream *output)
This will read the binary protobuffer control network header to an fstream.
QList< ControlPoint * > m_points
ControlPoints that are read in from a file or ready to be written out to a file.
Handle various control network file format versions.
void readProtobufV0001(const Pvl &header, const FileName netFile, Progress *progress=NULL)
Read a protobuf version 1 control network and prepare the data to be converted into a control network...
void readPvlV0001(const PvlObject &network, Progress *progress=NULL)
read a version 1 Pvl control network and convert the data into control points.
void readPvlV0002(const PvlObject &network, Progress *progress=NULL)
read a version 2 Pvl control network and convert the data into control points.
void read(const FileName netFile, Progress *progress=NULL)
Read a control network file and prepare the data to be converted into a control network.
void readProtobuf(const Pvl &header, const FileName netFile, Progress *progress=NULL)
Read a protobuf control network and prepare the data to be converted into a control network...
A container for the information stored in a version 3 and 4 ControlPoint.
void readProtobufV0002(const Pvl &header, const FileName netFile, Progress *progress=NULL)
Read a protobuf version 2 control network and prepare the data to be converted into a control network...
void readPvlV0005(const PvlObject &network, Progress *progress=NULL)
read a version 5 Pvl control network and convert the data into control points.
Program progress reporter.
ControlNetVersioner & operator=(const ControlNetVersioner &other)
Asssignment operator.
int writeFirstPoint(std::fstream *output)
This will write the first control point to a file stream.
QString description() const
Returns the network's description.
void readProtobufV0005(const Pvl &header, const FileName netFile, Progress *progress=NULL)
Read a protobuf version 5 control network and prepare the data to be converted into a control network...
ControlNetHeaderV0001 ControlNetHeaderV0003
Typedef for consistent naming of containers for version 3.
ControlPointV0003 ControlPointV0005
Typedef for consistent naming of containers for version 5.
void readPvlV0003(const PvlObject &network, Progress *progress=NULL)
read a version 3 Pvl control network and convert the data into control points.
void readPvlV0004(const PvlObject &network, Progress *progress=NULL)
read a version 4 Pvl control network and convert the data into control points.
Container for cube-like labels.
ControlNetHeaderV0001 ControlNetHeaderV0002
Typedef for consistent naming of containers for version 2.
QString targetName() const
Returns the target for the network.
ControlNetHeaderV0001 ControlNetHeaderV0004
Typedef for consistent naming of containers for version 4.
A container for the information stored in a version 1 ControlPoint.
void write(FileName netFile)
This will write a control net file object to disk.
ControlPoint * takeFirstPoint()
Returns the first point stored in the versioner's internal list.
ControlNetHeaderV0005 m_header
Header containing information about the whole network.
QString netId() const
Returns the ID for the network.
ControlNetVersioner()
Default constructor. Intentially un-implemented.
Namespace for ISIS/Bullet specific routines.
bool m_ownsPoints
Flag if the versioner owns the control points stored in it.
ControlNetHeaderV0001 ControlNetHeaderV0005
Typedef for consistent naming of containers for version 5.
ControlPoint * createPoint(ControlPointV0001 &point)
Create a pointer to a latest version ControlPoint from an object in a V0001 control net file...
QString userName() const
Returns the name of the last person or program to modify the network.
Contains Pvl Groups and Pvl Objects.
ControlPointV0003 ControlPointV0004
Typedef for consistent naming of containers for version 4.
A container for the information stored in a version 2 ControlPoint.
void readPvl(const Pvl &network, Progress *progress=NULL)
Read a Pvl control network and prepare the data to be converted into a control network.
void createHeader(const ControlNetHeaderV0001 header)
Create the internal header from a V0001 header.
int numPoints() const
Returns the number of points that have been read in or are ready to write out.