16#include <xercesc/sax2/SAX2XMLReader.hpp>
18#include <nlohmann/json.hpp>
145 IsisAml(
const QString &xmlfile);
153 void PutAsString(
const QString ¶mName,
const QString &value);
154 void PutAsString(
const QString ¶mName,
const std::vector<QString> &value);
156 void PutFileName(
const QString ¶mName,
const QString &value);
157 void PutFileName(
const QString ¶mName,
const std::vector<QString> &value);
159 void PutCubeName(
const QString ¶mName,
const QString &value);
161 void PutDouble(
const QString ¶mName,
const double &value);
162 void PutDouble(
const QString ¶mName,
const std::vector<double> &value);
164 void PutInteger(
const QString ¶mName,
const int &value);
165 void PutInteger(
const QString ¶mName,
const std::vector<int> &value);
167 void PutBoolean(
const QString ¶mName,
const bool &value);
168 void PutBoolean(
const QString ¶mName,
const std::vector<bool> &value);
170 void PutString(
const QString ¶mName,
const QString &value);
171 void PutString(
const QString ¶mName,
const std::vector<QString> &value);
173 QString
GetAsString(
const QString ¶mName)
const;
174 void GetAsString(
const QString ¶mName, std::vector<QString> &values)
const;
176 QString
GetFileName(
const QString ¶mName, QString extension =
"")
const;
177 void GetFileName(
const QString ¶mName, std::vector<QString> &values)
const;
179 QString
GetCubeName(
const QString ¶mName, QString extension =
"")
const;
181 QString
GetString(
const QString ¶mName)
const;
182 void GetString(
const QString ¶mName, std::vector<QString> &values)
const;
184 int GetInteger(
const QString ¶mName)
const;
185 void GetInteger(
const QString ¶mName, std::vector<int> &values)
const;
187 bool GetBoolean(
const QString ¶mName)
const;
189 void GetBoolean(
const QString ¶mName, std::vector<bool> &values)
const;
191 double GetDouble(
const QString ¶mName)
const;
192 void GetDouble(
const QString ¶mName, std::vector<double> &values)
const;
194 bool WasEntered(
const QString ¶mName)
const;
195 void Clear(
const QString ¶mName);
203 QString
Brief()
const;
211 QString
GroupName(
const int &group)
const;
214 int GroupIndex(
const QString & grpName)
const;
220 QString
ParamName(
const int &group,
const int ¶m)
const;
222 QString
ParamType(
const int &group,
const int ¶m)
const;
224 QString
ParamBrief(
const int &group,
const int ¶m)
const;
228 QString
ParamMinimum(
const int &group,
const int ¶m)
const;
232 QString
ParamMaximum(
const int &group,
const int ¶m)
const;
236 QString
ParamOdd(
const int &group,
const int ¶m)
const;
249 const int &great)
const;
252 const int &great)
const;
255 const int &great)
const;
258 const int &les)
const;
261 const int ¬Eq)
const;
266 const int &option)
const;
269 const int &option)
const;
272 const int &option)
const;
275 const int &option)
const;
278 const int &option,
const int &exclude)
const;
281 const int &option)
const;
284 const int &option,
const int &include)
const;
286 QString
ParamDefault(
const int &group,
const int ¶m)
const;
290 QString
ParamFilter(
const int &group,
const int ¶m)
const;
292 QString
ParamPath(
const int &group,
const int ¶m)
const;
294 QString
ParamFileMode(
const int &group,
const int ¶m)
const;
298 QString
ParamExclude(
const int &group,
const int ¶m,
299 const int &exclude)
const;
302 QString
ParamInclude(
const int &group,
const int ¶m,
303 const int &include)
const;
305 QString
PixelType(
const int &group,
const int ¶m)
const;
307 int HelpersSize(
const int &group,
const int ¶m)
const;
310 const int &helper)
const;
313 const int &helper)
const;
315 QString
HelperBrief(
const int &group,
const int ¶m,
316 const int &helper)
const;
319 const int &helper)
const;
321 QString
HelperIcon(
const int &group,
const int ¶m,
322 const int &helper)
const;
330 QString pvlGrpName, std::vector<QString> & exclude);
348 XERCES::SAX2XMLReader *parser;
353 void StartParser(
const char *xmlfile);
358 void CheckFileNamePreference(QString filename, QString paramname);
Manipulate and parse attributes of output cube filenames.
Definition CubeAttribute.h:473
Container for cube-like labels.
Definition Pvl.h:119
Definition IsisAmlData.h:124
Application program XML file parameter manager.
Definition IsisAml.h:140
void PutDouble(const QString ¶mName, const std::vector< double > &value)
double GetDouble(const QString ¶mName) const
Allows the retrieval of a value for a parameter of type "double".
Definition IsisAml.cpp:966
void CommandLine(Isis::Pvl &lab) const
Creates a QString which could be used as a command line.
Definition IsisAml.cpp:3099
QString ParamOdd(const int &group, const int ¶m) const
Returns whether the selected parameter has a restriction on odd values or not.
Definition IsisAml.cpp:1461
int ParamExcludeSize(const int &group, const int ¶m) const
Returns the number of parameters excluded in this parameter's exclusions.
Definition IsisAml.cpp:1894
Isis::CubeAttributeInput & GetInputAttribute(const QString ¶mName)
Gets the attributes for an input cube.
Definition IsisAml.cpp:2059
int GetInteger(const QString ¶mName) const
Allows the retrieval of a value for a parameter of type "integer".
Definition IsisAml.cpp:883
QString ParamLessThan(const int &group, const int ¶m, const int &great) const
Returns the name of the specified lessThan parameter.
Definition IsisAml.cpp:1575
QString ParamLessThanOrEqual(const int &group, const int ¶m, const int &les) const
Returns the name of the specified lessThanOrEqual parameter.
Definition IsisAml.cpp:1591
QString ParamBrief(const int &group, const int ¶m) const
Returns the brief description of a parameter in a specified group.
Definition IsisAml.cpp:1376
QString ParamListInclude(const int &group, const int ¶m, const int &option, const int &include) const
Returns the parameter name to be included if this option is selected.
Definition IsisAml.cpp:1879
QString ParamDescription(const int &group, const int ¶m) const
Returns the long description of a parameter in a specified group.
Definition IsisAml.cpp:1390
bool StringToBool(QString value) const
Returns a boolean value based on the QString contents.
Definition IsisAml.cpp:3056
void PutCubeName(const QString ¶mName, const QString &value)
Allows the insertion of a value for a parameter of type "cubename".
Definition IsisAml.cpp:273
void GetInteger(const QString ¶mName, std::vector< int > &values) const
int ParamListIncludeSize(const int &group, const int ¶m, const int &option) const
Returns the number of items in a parameters list include section.
Definition IsisAml.cpp:1863
void PutBoolean(const QString ¶mName, const bool &value)
Allows the insertion of a value for a parameter of type "boolean".
Definition IsisAml.cpp:479
QString GetFileName(const QString ¶mName, QString extension="") const
Allows the retrieval of a value for a parameter of type "filename".
Definition IsisAml.cpp:641
void PutString(const QString ¶mName, const std::vector< QString > &value)
void PutBoolean(const QString ¶mName, const std::vector< bool > &value)
bool WasEntered(const QString ¶mName) const
Returns a true if the parameter has a value, and false if it does not.
Definition IsisAml.cpp:2020
QString ParamListValue(const int &group, const int ¶m, const int &option) const
Returns the option value for a specific option to a parameter.
Definition IsisAml.cpp:1783
int NumGroups() const
Returns the number of groups found in the XML.
Definition IsisAml.cpp:1164
int ParamListExcludeSize(const int &group, const int ¶m, const int &option) const
Returns the number of items in a parameters list exclude section.
Definition IsisAml.cpp:1831
QString PixelType(const int &group, const int ¶m) const
Returns the default pixel type from the XML.
Definition IsisAml.cpp:1920
QString GetString(const QString ¶mName) const
Allows the retrieval of a value for a parameter of type "string".
Definition IsisAml.cpp:769
bool GetBoolean(const QString ¶mName) const
Allows the retrieval of a value for a parameter of type "boolean".
Definition IsisAml.cpp:1049
nlohmann::json GetParams()
Creates a json object which could be used as a command line.
Definition IsisAml.cpp:1205
int ParamGreaterThanSize(const int &group, const int ¶m) const
Returns the number of values in the parameters greater than list.
Definition IsisAml.cpp:1475
QString ParamNotEqual(const int &group, const int ¶m, const int ¬Eq) const
Returns the name of the specified notEqual parameter.
Definition IsisAml.cpp:1607
void PutInteger(const QString ¶mName, const int &value)
Allows the insertion of a value for a parameter of type "integer".
Definition IsisAml.cpp:311
int HelpersSize(const int &group, const int ¶m) const
Returns the number of helpers the parameter has.
Definition IsisAml.cpp:1933
void GetFileName(const QString ¶mName, std::vector< QString > &values) const
QString ParamGreaterThanOrEqual(const int &group, const int ¶m, const int &great) const
Returns the name of the specified greaterThanOrEqual parameter.
Definition IsisAml.cpp:1559
void GetBoolean(const QString ¶mName, std::vector< bool > &values) const
void CreatePVL(Isis::Pvl &pvlDef, QString guiGrpName, QString pvlObjName, QString pvlGrpName, std::vector< QString > &exclude)
Create Pvl with the parameters in a user defined group given the Pvl object and group name.
Definition IsisAml.cpp:1273
QString GetCubeName(const QString ¶mName, QString extension="") const
Retrieves of a value for a parameter of type "cubename".
Definition IsisAml.cpp:724
QString ParamMaximumInclusive(const int &group, const int ¶m) const
Returns whether the maximum value is inclusive or not.
Definition IsisAml.cpp:1446
QString Description() const
Returns the full description of the program.
Definition IsisAml.cpp:1154
QString ParamType(const int &group, const int ¶m) const
Returns the parameter type of a parameter in a specified group.
Definition IsisAml.cpp:1654
int ParamListSize(const int &group, const int ¶m) const
Returns the number of options in the specified parameter's list.
Definition IsisAml.cpp:1769
int NumParams(const int &) const
Returns the number of parameters in a group.
Definition IsisAml.cpp:1349
QString Version() const
Returns the application version date.
Definition IsisAml.cpp:3176
QString GroupName(const int &group) const
Returns the group name of group[index].
Definition IsisAml.cpp:1176
QString ParamExclude(const int &group, const int ¶m, const int &exclude) const
Returns the name of the specified excluded parameter.
Definition IsisAml.cpp:1623
QString HelperFunction(const int &group, const int ¶m, const int &helper) const
Returns the name of the helper function.
Definition IsisAml.cpp:1962
void PutAsString(const QString ¶mName, const std::vector< QString > &value)
QString HelperButtonName(const int &group, const int ¶m, const int &helper) const
Returns the name of the helper button.
Definition IsisAml.cpp:1947
QString Brief() const
Returns the brief description of the program.
Definition IsisAml.cpp:1144
const IsisParameterData * ReturnParam(const QString ¶mName) const
Returns a pointer to a parameter whose name starts with paramName.
Definition IsisAml.cpp:2152
IsisAml(const QString &xmlfile)
Constructs an IsisAml object and internalizes the XML data in the given file name.
Definition IsisAml.cpp:41
QString ParamFilter(const int &group, const int ¶m) const
Returns the parameter filter for a parameter in a specified group.
Definition IsisAml.cpp:1708
QString ParamListExclude(const int &group, const int ¶m, const int &option, const int &exclude) const
Returns the parameter name to be excluded if this option is selected.
Definition IsisAml.cpp:1847
int ParamLessThanOrEqualSize(const int &group, const int ¶m) const
Returns the number of values in the parameters less than or equal list.
Definition IsisAml.cpp:1515
QString ParamListBrief(const int &group, const int ¶m, const int &option) const
Returns the brief description for a specific option to a parameter.
Definition IsisAml.cpp:1799
QString ParamListDescription(const int &group, const int ¶m, const int &option) const
Returns the full description for a specific option to a parameter.
Definition IsisAml.cpp:1815
QString ParamDefault(const int &group, const int ¶m) const
Returns the default for a parameter in a specified group.
Definition IsisAml.cpp:1668
void GetAsString(const QString ¶mName, std::vector< QString > &values) const
int ParamLessThanSize(const int &group, const int ¶m) const
Returns the number of values in the parameters less than list.
Definition IsisAml.cpp:1502
QString HelperBrief(const int &group, const int ¶m, const int &helper) const
Returns the brief description of the helper button.
Definition IsisAml.cpp:1977
QString ParamInclude(const int &group, const int ¶m, const int &include) const
Returns the name of the specified included parameter.
Definition IsisAml.cpp:1639
QString GetAsString(const QString ¶mName) const
Allows the retrieval of a value for a parameter of any type.
Definition IsisAml.cpp:570
int GroupIndex(const QString &grpName) const
Given the group name get its index in group array.
Definition IsisAml.cpp:1191
void PutDouble(const QString ¶mName, const double &value)
Allows the insertion of a value for a parameter of type "double".
Definition IsisAml.cpp:395
int ParamGreaterThanOrEqualSize(const int &group, const int ¶m) const
Returns the number of values in the parameters greater than or equal list.
Definition IsisAml.cpp:1488
QString ParamInternalDefault(const int &group, const int ¶m) const
Returns the internal default for a parameter in a specified group.
Definition IsisAml.cpp:1688
int ParamNotEqualSize(const int &group, const int ¶m) const
Returns the number of values in the not equal list.
Definition IsisAml.cpp:1529
QString ProgramName() const
Returns the Program name.
Definition IsisAml.cpp:1133
int ParamIncludeSize(const int &group, const int ¶m) const
Returns the number of parameters included in this parameter's inclusions.
Definition IsisAml.cpp:1907
QString ParamMinimumInclusive(const int &group, const int ¶m) const
Returns whether the minimum value is inclusive or not.
Definition IsisAml.cpp:1432
void PutString(const QString ¶mName, const QString &value)
Allows the insertion of a value for any parameter.
Definition IsisAml.cpp:131
QString ParamGreaterThan(const int &group, const int ¶m, const int &great) const
Returns the name of the specified greaterThan parameter.
Definition IsisAml.cpp:1543
QString ParamMinimum(const int &group, const int ¶m) const
Returns the minimum value of a parameter in a specified group.
Definition IsisAml.cpp:1404
QString ParamFileMode(const int &group, const int ¶m) const
Returns the file mode for a parameter in a specified group.
Definition IsisAml.cpp:1748
void PutInteger(const QString ¶mName, const std::vector< int > &value)
Isis::CubeAttributeOutput & GetOutputAttribute(const QString ¶mName)
Gets the attributes for an output cube.
Definition IsisAml.cpp:2105
void GetDouble(const QString ¶mName, std::vector< double > &values) const
void GetString(const QString ¶mName, std::vector< QString > &values) const
void Clear(const QString ¶mName)
Clears the value(s) in the named parameter.
Definition IsisAml.cpp:2037
QString ParamPath(const int &group, const int ¶m) const
Returns the default path for a filename/cube parameter.
Definition IsisAml.cpp:1728
QString HelperDescription(const int &group, const int ¶m, const int &helper) const
Returns the long description of the helper button.
Definition IsisAml.cpp:1992
void VerifyAll()
Verify all parameters.
Definition IsisAml.cpp:2575
QString ParamName(const int &group, const int ¶m) const
Returns the parameter name.
Definition IsisAml.cpp:1362
QString HelperIcon(const int &group, const int ¶m, const int &helper) const
Returns the name of the icon for the helper button.
Definition IsisAml.cpp:2007
bool IsParamInPvlInclude(QString ¶mName, std::vector< QString > &exclude)
Verify whether Parameter name is in the Include list Used in creation of DefFile.
Definition IsisAml.cpp:1331
void PutAsString(const QString ¶mName, const QString &value)
Allows the insertion of a value for any parameter.
Definition IsisAml.cpp:68
~IsisAml()
Destructs an IsisAml object.
Definition IsisAml.cpp:48
void PutFileName(const QString ¶mName, const QString &value)
Allows the insertion of a value for a parameter of type "filename".
Definition IsisAml.cpp:198
QString ParamMaximum(const int &group, const int ¶m) const
Returns the maximum value of a parameter in a specified group.
Definition IsisAml.cpp:1418
void PutFileName(const QString ¶mName, const std::vector< QString > &value)
Definition IsisAmlData.h:53
This is free and unencumbered software released into the public domain.
Definition IsisXMLApplication.h:19