Isis Developer Reference
ExportPdsTable.h
Go to the documentation of this file.
1 #ifndef ExportPdsTable_h
2 #define ExportPdsTable_h
3 
8 /* SPDX-License-Identifier: CC0-1.0 */
9 
10 #include <fstream>
11 
12 #include <QString>
13 
14 namespace Isis {
15  class EndianSwapper;
16  class Pvl;
17  class PvlObject;
18  class Table;
19  class TableRecord;
53  public:
54  ExportPdsTable(Table isisTable);
56  PvlObject exportTable(char *pdsTableBuffer, int pdsFileRecordBytes,
57  QString pdsByteOrder);
58  QString formatPdsTableName();
59  static QString formatPdsTableName(QString isisTableName);
60  private:
61  void Pack(TableRecord record, char *buffer, EndianSwapper *endianSwap);
62  PvlObject fillMetaData();
63  Table *m_isisTable;
64  int m_numRows;
67  int m_outputRecordBytes;
69  int m_rowBytes;
73  QString m_pdsByteOrder;
75  };
76 }
77 #endif
Isis::EndianSwapper::Float
float Float(void *buf)
Swaps a floating point value.
Definition: EndianSwapper.cpp:78
Isis::TableField::type
Type type() const
Returns the enumerated value of the TableField value's type.
Definition: TableField.cpp:112
Table.h
Isis::ExportPdsTable
Export a PDS table from an ISIS Table.
Definition: ExportPdsTable.h:52
Isis::PvlObject
Contains Pvl Groups and Pvl Objects.
Definition: PvlObject.h:61
Isis::PvlKeyword
A single keyword-value pair.
Definition: PvlKeyword.h:82
TableField.h
Isis::TableRecord::Fields
int Fields() const
Returns the number of fields that are currently in the record.
Definition: TableRecord.cpp:78
Isis::TableRecord
Definition: TableRecord.h:38
ExportPdsTable.h
Isis::toString
QString toString(bool boolToConvert)
Global function to convert a boolean to a string.
Definition: IString.cpp:211
Isis::TableField::isInteger
bool isInteger() const
Determines whether the field type is Integer.
Definition: TableField.cpp:122
IString.h
Isis::ExportPdsTable::ExportPdsTable
ExportPdsTable(Table isisTable)
Construct an ExportPdsTable object and set default member variable values.
Definition: ExportPdsTable.cpp:38
Isis::ExportPdsTable::formatPdsTableName
QString formatPdsTableName()
Format the PDS table object name using the ISIS table name.
Definition: ExportPdsTable.cpp:205
Endian.h
Isis::TableRecord::RecordSize
int RecordSize() const
Returns the number of bytes per record.
Definition: TableRecord.cpp:87
Isis::ExportPdsTable::exportTable
PvlObject exportTable(char *pdsTableBuffer, int pdsFileRecordBytes, QString pdsByteOrder)
This methods fills the given buffer with the binary PDS table data and returns label information.
Definition: ExportPdsTable.cpp:67
Isis::Double
@ Double
Definition: PixelType.h:36
Pvl.h
_FILEINFO_
#define _FILEINFO_
Macro for the filename and line number.
Definition: IException.h:24
Isis::TableField::isReal
bool isReal() const
Determines whether the field type is Text.
Definition: TableField.cpp:150
EndianSwapper.h
Isis::Table
Class for storing Table blobs information.
Definition: Table.h:61
Isis::IException
Isis exception class.
Definition: IException.h:91
Isis::TableField::isDouble
bool isDouble() const
Determines whether the field type is Double.
Definition: TableField.cpp:132
Isis::TableField::size
int size() const
Returns the number of values stored for the field at each record.
Definition: TableField.cpp:168
Isis::TableField::name
QString name() const
Returns the name of the TableField.
Definition: TableField.cpp:97
Isis::EndianSwapper::Int
int Int(void *buf)
Swaps a 4 byte integer value.
Definition: EndianSwapper.cpp:108
IException.h
std
Namespace for the standard library.
Isis::ExportPdsTable::~ExportPdsTable
~ExportPdsTable()
Destructs for ExportPdsTable objects.
Definition: ExportPdsTable.cpp:51
PvlKeyword.h
Isis::EndianSwapper
Byte swapper.
Definition: EndianSwapper.h:38
PvlObject.h
Isis::TableField::isText
bool isText() const
Determines whether the field type is Text.
Definition: TableField.cpp:141
TableRecord.h
Isis::Table::Records
int Records() const
Returns the number of records.
Definition: Table.cpp:313
Isis::EndianSwapper::Double
double Double(void *buf)
Swaps a double precision value.
Definition: EndianSwapper.cpp:55
Isis
This is free and unencumbered software released into the public domain.
Definition: Apollo.h:16
Isis::Real
@ Real
Definition: PixelType.h:35
Isis::TableField
Class for storing an Isis::Table's field information.
Definition: TableField.h:47