#include <parasolleader.h>
Public Member Functions | |
PARASOLLeader (const string leader_filename="") | |
void | print_leader_file_descriptor () |
print out the leader file descriptor | |
void | print_spatio_temp_char () |
print out the spatio-temporal characteristics set in the leader file | |
void | print_header () |
print out the header set in the leader file | |
void | print_instr_setting_param () |
print out the instrument settings parameters set in the leader file | |
void | print_scaling_factors () |
print out the scaling factors set in the leader file | |
void | print_techno_param () |
print out the technological parameters set in the leader file | |
Public Attributes | |
LeaderFileDescriptorRecord * | leader_file_descriptor |
Protected Member Functions | |
virtual const PARASOLFileFormat * | get_leader_file_format () |
access to the leader file format for a given product level | |
const bool | is_record_loaded (const Record &rec) |
check if a record has been read. | |
void | free_record (const Record &rec) |
free the given record data | |
void | free_records () |
Free all records. | |
PARASOLFileRecord * | init_record (const Record &rec) |
Initialize a record class. | |
const int | get_record_offset (const Record &rec) |
access to ones record file offset If the record isn't in the leader leader file, it returns -1 | |
const int | get_entry_offset (const Record rec, const int entry_idx, const int group_idx=-1, const int subgroup_index=-1, const int val_index=-1) |
access to the offset of an entry, relative to the record start TODO example | |
vector< EntryBlock > | get_entry_block (const Record rec, const int entry_idx) const |
access to the offset of an entry, relative to the record start TODO example | |
const RecordFormat * | get_record_format (const Record &rec) |
access to the RecordFormat object that describes the name, type, offset and length of each record entry | |
PARASOLFileRecord * | get_record (const Record &rec) |
access to one record entry | |
Protected Attributes | |
string | filename |
PARASOLLeaderFormat * | leader_file_format |
HeaderRecord * | header |
SpatioTemporalCharacteristicsRecord * | spatio_temp_char |
InstrumentSettingParametersRecord * | instrument_setting_param |
TechnologicalParametersRecord * | techno_param |
DataProcessingParametersRecord * | data_processing_param |
ScalingFactorsRecord * | scaling_factors |
AnnotationsRecord * | annotations |
Friends | |
class | PARASOLFileData |
manages the reading of a PARASOL leader file.
void PARASOLLeader::free_record | ( | const Record & | rec | ) | [protected] |
free the given record data
rec | the record code |
Referenced by free_records(), and PARASOLFileData::load_viewing_directions_data().
vector< EntryBlock > PARASOLLeader::get_entry_block | ( | const Record | rec, | |
const int | entry_idx | |||
) | const [protected, virtual] |
access to the offset of an entry, relative to the record start TODO example
rec | the concerned record | |
entry_idx | index of the entry, start at 0, record_number is index 0 | |
i_val | indices of the value, for parametres repeated many times in a record |
bad_parametre_idx | if the entry idx is invalid for the current product |
rec | the considered record | |
entry_idx | index of the entry (product specific) |
bad_parametre_idx | if the entry idx is invalid for the current product |
entry_idx | index of the entry (product specific) |
rec | current record | |
entry_idx | indice of the entry |
Implements PARASOLFileReader.
References PARASOLFileFormat::get_level(), and ScalingFactorsRecord::nb_pix_param.
const int PARASOLLeader::get_entry_offset | ( | const Record | rec, | |
const int | entry_idx, | |||
const int | group_idx = -1 , |
|||
const int | subgroup_index = -1 , |
|||
const int | val_index = -1 | |||
) | [protected] |
access to the offset of an entry, relative to the record start TODO example
rec | the concerned record | |
entry_idx | index of the entry, start at 0, record_number is index 0 | |
group_idx | index of an entry that is repeated in a record. Ex : In the spatio-temporal characteristic of L1 products, the sequence number of the entry : the "line number of pixel at nadir for 670" | |
subgroup_index | unused at this time. Should be useful for technological param that has seq_nb and im_nb imbricated | |
val_index | unused |
virtual const PARASOLFileFormat* PARASOLLeader::get_leader_file_format | ( | ) | [inline, protected, virtual] |
access to the leader file format for a given product level
Referenced by get_record_format(), print_header(), print_leader_file_descriptor(), print_scaling_factors(), print_spatio_temp_char(), and print_techno_param().
PARASOLFileRecord * PARASOLLeader::get_record | ( | const Record & | rec | ) | [protected, virtual] |
access to one record entry
rec | the record code |
Implements PARASOLFileReader.
Referenced by is_record_loaded().
const RecordFormat * PARASOLLeader::get_record_format | ( | const Record & | rec | ) | [protected, virtual] |
access to the RecordFormat object that describes the name, type, offset and length of each record entry
rec | the record code |
Implements PARASOLFileReader.
References get_leader_file_format().
const int PARASOLLeader::get_record_offset | ( | const Record & | rec | ) | [protected, virtual] |
access to ones record file offset If the record isn't in the leader leader file, it returns -1
rec | the record code |
Implements PARASOLFileReader.
References LeaderFileDescriptorRecord::get_record_size(), init_record(), is_record_loaded(), PARASOLFileReader::read_record(), and PARASOLFileRecord::rec_len.
PARASOLFileRecord * PARASOLLeader::init_record | ( | const Record & | rec | ) | [protected, virtual] |
Initialize a record class.
rec | the record code |
Implements PARASOLFileReader.
Referenced by get_record_offset().
const bool PARASOLLeader::is_record_loaded | ( | const Record & | rec | ) | [protected, virtual] |
check if a record has been read.
Implements PARASOLFileReader.
References get_record().
Referenced by get_record_offset(), and PARASOLFileData::get_record_time().