24 #ifndef _PDS_Converter_
25 #define _PDS_Converter_
62 static const char*
const
122 const char** excluded_names = NULL,
const char** image_names = NULL);
182 const std::string& PDS_label_pathname,
183 const std::string& JP2_pathname,
184 const char** removed_parameter_names = NULL,
185 PDS_Data* additional_parameters = NULL
230 const std::string& PDS_label_pathname,
232 unsigned int resolution_level = 1,
233 const char** removed_parameter_names = NULL,
234 PDS_Data* additional_parameters = NULL
429 (
const std::string& JP2_pathname);
461 bool pad_label =
false
An Image_Data_Block describes PDS image data.
Definition: Image_Data_Block.hh:45
A PDS_Converter is used to convert an attached PDS image label to or from a detached PDS/JP2 label.
Definition: PDS_Converter.hh:56
static const char * DEFAULT_PRODUCT_TYPE
Default product name.
Definition: PDS_Converter.hh:70
Image_Data_Block * image_data()
Get the Image_Data_Block from the PDS_Data::PDS_Data_Block_List.
Definition: PDS_Converter.cc:204
virtual PDS_Converter & operator=(const PDS_Converter &converter)
Assigns another PDS_Converter to this PDS_Converter.
Definition: PDS_Converter.cc:152
PDS_Data::PDS_Data_Block_List * data_blocks() const
Get the list of data blocks in the PDS label.
Definition: PDS_Converter.hh:302
const char ** image_data_block_names() const
Get the parameter names of image data blocks.
Definition: PDS_Converter.hh:375
PDS_Converter & label_size(unsigned int size)
Set the preferred size of a label file.
Definition: PDS_Converter.hh:282
void refresh_data_blocks()
Refresh the list of data blocks.
Definition: PDS_Converter.cc:267
static const char * GeoTIFF_PARAMETER_NAME
GeoTIFF included.
Definition: PDS_Converter.hh:88
virtual ~PDS_Converter()
Frees the PDS_Data::PDS_Data_Block_List and its contents.
Definition: PDS_Converter.cc:192
unsigned int write_label(const std::string &pathname, PDS_Data &label, idaeim::PVL::Lister *lister=NULL, bool pad_label=false)
Write a label file.
Definition: PDS_Converter.cc:402
static const char * COMPRESSED_FILE_PARAMETERS_GROUP
Names of the PDS/JP2 label parameter group describing the destination compressed file.
Definition: PDS_Converter.hh:82
Image_Data_Block * IMAGE_Data_Block
Pointer to the IMAGE data block in the Data_Blocks list.
Definition: PDS_Converter.hh:495
virtual bool label_recognized() const =0
Test whether the label parameters are recognized by this converter.
static const char * UNCOMPRESSED_FILE_PARAMETERS_GROUP
Name of the PDS/JP2 label parameter group describing the source uncompressed file.
Definition: PDS_Converter.hh:76
PDS_Converter()
Constructs an empty PDS_Converter.
Definition: PDS_Converter.cc:104
virtual void write_PDS_JP2_label(const std::string &PDS_label_pathname, const std::string &JP2_pathname, const char **removed_parameter_names=NULL, PDS_Data *additional_parameters=NULL)=0
Write a detached PDS/JP2 label file.
virtual void write_PDS_label(const std::string &PDS_label_pathname, const Rectangle *image_region=NULL, unsigned int resolution_level=1, const char **removed_parameter_names=NULL, PDS_Data *additional_parameters=NULL)=0
Write a PDS label file for image data to be appended.
static const char * GML_PARAMETER_NAME
GML included.
Definition: PDS_Converter.hh:91
void clear_data_blocks()
Clear the data blocks list.
Definition: PDS_Converter.cc:276
const char ** excluded_data_block_names() const
Get the names of parameters to be excluded from the data block list.
Definition: PDS_Converter.hh:349
static const char * NO_VERSION_CHANGE_PARAMETER_NAME
No Version number change.
Definition: PDS_Converter.hh:94
const char ** Image_Data_Block_Names
Names (NULL-terminated array) of data blocks that are Image_Data_Blocks.
Definition: PDS_Converter.hh:491
virtual std::string product_names() const
Get the name of the product types that this converter is intended to process.
Definition: PDS_Converter.cc:199
unsigned int Label_Size
The preferred size of the attached PDS label.
Definition: PDS_Converter.hh:499
const char ** Excluded_Data_Block_Names
Names (NULL-terminated array) of data blocks to be exluded from the list of data blocks (probably bec...
Definition: PDS_Converter.hh:483
idaeim::PVL::Aggregate * PDS_JP2_image_parameters(const std::string &JP2_pathname)
Assemble PDS/JP2 image file description parameters.
Definition: PDS_Converter.cc:294
static const char *const ID
Class identification name with source code version and date.
Definition: PDS_Converter.hh:63
PDS_Data::PDS_Data_Block_List * Data_Blocks
Pointer to the list of data blocks found in the PDS label.
Definition: PDS_Converter.hh:487
unsigned int label_size() const
Get the preferred size of a label file.
Definition: PDS_Converter.hh:289
PDS_Data contains PDS label PVL parameters.
Definition: PDS_Data.hh:52
std::vector< PDS_Data_Block * > PDS_Data_Block_List
A vector of PDS_Data_Block object pointers.
Definition: PDS_Data.hh:58
std::string pathname(const Parameter *root=NULL) const
Definition: Dimensions.cc:30
A Rectangle is a position with a size.
Definition: Dimensions.hh:223