USGS

Isis 3.0 Object Programmers' Reference

Home

Isis::ControlNetFileV0001 Class Reference

Handle Binary Control Network Files version 1. More...

#include <ControlNetFileV0001.h>

Inheritance diagram for Isis::ControlNetFileV0001:
Inheritance graph
Collaboration diagram for Isis::ControlNetFileV0001:
Collaboration graph

Public Member Functions

virtual void Read (const Pvl &header, const FileName &file)
 This reads the binary file into memory.
 
virtual void Write (const FileName &file) const
 This writes the binary file that is in memory to disk.
 
virtual Pvl toPvl () const
 Convert the binary representation to Pvl (any pvl version).
 
ControlNetFileProtoV0001GetNetwork ()
 Retrieve the protocol buffer that encapsulates the entire control network.
 
ControlNetLogDataProtoV0001GetLogData ()
 Retrieve the protocol buffer that encapsulates all of the log data.
 

Private Attributes

ControlNetFileProtoV0001p_network
 This contains the entire cnet.
 
ControlNetLogDataProtoV0001p_logData
 This contains all of the log data in the cnet.
 

Detailed Description

Handle Binary Control Network Files version 1.

This functionality and history was extracted from Isis::ControlNet

Author
2011-04-08 Steven Lambright
History:

2010-01-12 Tracie Sucharski Added support for binary networks, added new parameters, renamed ComputeErrors to ComputeResiduals, renamed MaximumError to MaximumResidual, renamed AverageError to AverageResidual.

2010-08-05 Steven Lambright New label format much closer to a cube so that we can expand upon it easily later. Also added support for more than just the protocol buffer in the file, at the current cost of reading the protocol buffer's binary data into memory. This might need to be changed later.

2011-04-04 Steven Lambright - Reading is more likely to work... not sure why my changes fixed it for very large networks. Binary reads now do the same progress as Pvl for console output consistency (and because it can take time).

2011-04-08 Steven Lambright - Extracted functionality to ControlNetFileV0001 class

Definition at line 58 of file ControlNetFileV0001.h.

Member Function Documentation

ControlNetLogDataProtoV0001& Isis::ControlNetFileV0001::GetLogData ( )
inline

Retrieve the protocol buffer that encapsulates all of the log data.

Definition at line 82 of file ControlNetFileV0001.h.

References p_logData.

ControlNetFileProtoV0001& Isis::ControlNetFileV0001::GetNetwork ( )
inline

Retrieve the protocol buffer that encapsulates the entire control network.

Definition at line 74 of file ControlNetFileV0001.h.

References p_network.

void Isis::ControlNetFileV0001::Read ( const Pvl header,
const FileName file 
)
virtual

This reads the binary file into memory.

The header is the Pvl that must be at the top of the file (it's how we could tell it was binary in the first place).

Parameters
headerThe pvl at the top of the file down to the "End" keyword
fileThe filename of the binary file to be read

Implements Isis::ControlNetFile.

Definition at line 35 of file ControlNetFileV0001.cpp.

References _FILEINFO_, Isis::PvlObject::clear(), and Isis::PvlObject::findObject().

Pvl Isis::ControlNetFileV0001::toPvl ( ) const
virtual

Convert the binary representation to Pvl (any pvl version).

Implements Isis::ControlNetFile.

Definition at line 97 of file ControlNetFileV0001.cpp.

References Isis::PvlObject::addObject(), Isis::PvlObject::findObject(), Isis::ControlMeasureLogData::ToKeyword(), and Isis::toString().

virtual void Isis::ControlNetFileV0001::Write ( const FileName file) const
inlinevirtual

This writes the binary file that is in memory to disk.

The behavior of this method is undefined if the required data is not set (ControlNetVersioner::LatestPvlToBinary guarantees they are, and this should never be called for old versions).

Parameters
fileThe filename of the binary file to be written

Implements Isis::ControlNetFile.

Definition at line 67 of file ControlNetFileV0001.h.

Member Data Documentation

ControlNetLogDataProtoV0001* Isis::ControlNetFileV0001::p_logData
private

This contains all of the log data in the cnet.

Definition at line 91 of file ControlNetFileV0001.h.

Referenced by GetLogData().

ControlNetFileProtoV0001* Isis::ControlNetFileV0001::p_network
private

This contains the entire cnet.

Definition at line 88 of file ControlNetFileV0001.h.

Referenced by GetNetwork().


The documentation for this class was generated from the following files: