HiRISE
 PDS_JP2

Generic_PDS_Converter.hh

Go to the documentation of this file.
00001 /*  Generic_PDS_Converter
00002 
00003 HiROC CVS ID: Generic_PDS_Converter.hh,v 1.9 2009/10/01 06:06:44 castalia Exp
00004 
00005 Copyright (C) 2007  Arizona Board of Regents on behalf of the
00006 Planetary Image Research Laboratory, Lunar and Planetary Laboratory at
00007 the University of Arizona.
00008 
00009 This library is free software; you can redistribute it and/or modify it
00010 under the terms of the GNU Lesser General Public License, version 2.1,
00011 as published by the Free Software Foundation.
00012 
00013 This library is distributed in the hope that it will be useful, but
00014 WITHOUT ANY WARRANTY; without even the implied warranty of
00015 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00016 Lesser General Public License for more details.
00017 
00018 You should have received a copy of the GNU Lesser General Public License
00019 along with this library; if not, write to the Free Software Foundation,
00020 Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA.
00021 
00022 *******************************************************************************/
00023 
00024 #ifndef _Generic_PDS_Converter_
00025 #define _Generic_PDS_Converter_
00026 
00027 #include    "PDS_Converter.hh"
00028 
00029 
00030 namespace UA
00031 {
00032 namespace HiRISE
00033 {
00046 class Generic_PDS_Converter
00047 :   public PDS_Converter
00048 {
00049 public:
00050 /*==============================================================================
00051     Constants:
00052 */
00054 static const char* const
00055     ID;
00056 
00058 static const char
00059     *PRODUCT_TYPE;
00060 
00062 static const char
00063     *DATA_POINTER_PARAMETER_UNITS;
00064 
00068 static const char*
00069     REMOVED_PDS_PARAMETER_NAMES[];
00070 
00074 static const char*
00075     REMOVED_PDS_JP2_PARAMETER_NAMES[];
00076 
00078 static const int
00079     DEFAULT_PDS_LABEL_SIZE;
00080 
00081 /*==============================================================================
00082     Constructors:
00083 */
00086 Generic_PDS_Converter ();
00087 
00104 explicit Generic_PDS_Converter (const std::string& pathname,
00105     const char** excluded_names = NULL, const char** image_names = NULL);
00106 
00107 /*==============================================================================
00108     Accessors:
00109 */
00115 std::string product_names () const;
00116 
00117 /*==============================================================================
00118     Manipulators:
00119 *//*------------------------------------------------------------------------------
00120     PDS_Converter implementation
00121 */
00130 bool label_recognized () const;
00131 
00166 void write_PDS_JP2_label
00167     (
00168     const std::string&  PDS_label_pathname,
00169     const std::string&  JP2_pathname,
00170     const char**        removed_parameter_names = NULL,
00171     PDS_Data*           additional_parameters = NULL
00172     );
00173 
00229 void write_PDS_label
00230     (
00231     const std::string&  PDS_label_pathname,
00232     const Rectangle*    image_region = NULL,
00233     unsigned int        resolution_level = 1,
00234     const char**        removed_parameter_names = NULL,
00235     PDS_Data*           additional_parameters = NULL
00236     );
00237 
00238 /*==============================================================================
00239     Helpers
00240 */
00241 protected:
00242 
00259 Parameter*
00260 parameter_of (idaeim::PVL::Aggregate& parameters, const char* name,
00261     bool throw_unless_found = true);
00262 
00263 };  //  End class Generic_PDS_Converter
00264 
00265 }   //  namespace HiRISE
00266 }   //  namespace UA
00267 #endif

Generated on Wed Sep 30 23:48:18 2009 for UA::HiRISE::PDS_JP2 by  doxygen 1.5.3