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;
329 void CreatePVL(Isis::Pvl &pvlDef , QString guiGrpName, QString pvlObjName,
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:452
IsisAmlData()
Definition IsisAmlData.cpp:14
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:964
void CommandLine(Isis::Pvl &lab) const
Creates a QString which could be used as a command line.
Definition IsisAml.cpp:3098
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:1459
int ParamExcludeSize(const int &group, const int ¶m) const
Returns the number of parameters excluded in this parameter's exclusions.
Definition IsisAml.cpp:1892
Isis::CubeAttributeInput & GetInputAttribute(const QString ¶mName)
Gets the attributes for an input cube.
Definition IsisAml.cpp:2056
int GetInteger(const QString ¶mName) const
Allows the retrieval of a value for a parameter of type "integer".
Definition IsisAml.cpp:881
QString ParamLessThan(const int &group, const int ¶m, const int &great) const
Returns the name of the specified lessThan parameter.
Definition IsisAml.cpp:1573
QString ParamLessThanOrEqual(const int &group, const int ¶m, const int &les) const
Returns the name of the specified lessThanOrEqual parameter.
Definition IsisAml.cpp:1589
QString ParamBrief(const int &group, const int ¶m) const
Returns the brief description of a parameter in a specified group.
Definition IsisAml.cpp:1374
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:1877
QString ParamDescription(const int &group, const int ¶m) const
Returns the long description of a parameter in a specified group.
Definition IsisAml.cpp:1388
bool StringToBool(QString value) const
Returns a boolean value based on the QString contents.
Definition IsisAml.cpp:3055
void PutCubeName(const QString ¶mName, const QString &value)
Allows the insertion of a value for a parameter of type "cubename".
Definition IsisAml.cpp:271
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:1861
void PutBoolean(const QString ¶mName, const bool &value)
Allows the insertion of a value for a parameter of type "boolean".
Definition IsisAml.cpp:477
QString GetFileName(const QString ¶mName, QString extension="") const
Allows the retrieval of a value for a parameter of type "filename".
Definition IsisAml.cpp:639
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:2018
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:1781
int NumGroups() const
Returns the number of groups found in the XML.
Definition IsisAml.cpp:1162
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:1829
QString PixelType(const int &group, const int ¶m) const
Returns the default pixel type from the XML.
Definition IsisAml.cpp:1918
QString GetString(const QString ¶mName) const
Allows the retrieval of a value for a parameter of type "string".
Definition IsisAml.cpp:767
bool GetBoolean(const QString ¶mName) const
Allows the retrieval of a value for a parameter of type "boolean".
Definition IsisAml.cpp:1047
nlohmann::json GetParams()
Creates a json object which could be used as a command line.
Definition IsisAml.cpp:1203
int ParamGreaterThanSize(const int &group, const int ¶m) const
Returns the number of values in the parameters greater than list.
Definition IsisAml.cpp:1473
QString ParamNotEqual(const int &group, const int ¶m, const int ¬Eq) const
Returns the name of the specified notEqual parameter.
Definition IsisAml.cpp:1605
void PutInteger(const QString ¶mName, const int &value)
Allows the insertion of a value for a parameter of type "integer".
Definition IsisAml.cpp:309
int HelpersSize(const int &group, const int ¶m) const
Returns the number of helpers the parameter has.
Definition IsisAml.cpp:1931
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:1557
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:1271
QString GetCubeName(const QString ¶mName, QString extension="") const
Retrieves of a value for a parameter of type "cubename".
Definition IsisAml.cpp:722
QString ParamMaximumInclusive(const int &group, const int ¶m) const
Returns whether the maximum value is inclusive or not.
Definition IsisAml.cpp:1444
QString Description() const
Returns the full description of the program.
Definition IsisAml.cpp:1152
QString ParamType(const int &group, const int ¶m) const
Returns the parameter type of a parameter in a specified group.
Definition IsisAml.cpp:1652
int ParamListSize(const int &group, const int ¶m) const
Returns the number of options in the specified parameter's list.
Definition IsisAml.cpp:1767
int NumParams(const int &) const
Returns the number of parameters in a group.
Definition IsisAml.cpp:1347
QString Version() const
Returns the application version date.
Definition IsisAml.cpp:3175
QString GroupName(const int &group) const
Returns the group name of group[index].
Definition IsisAml.cpp:1174
QString ParamExclude(const int &group, const int ¶m, const int &exclude) const
Returns the name of the specified excluded parameter.
Definition IsisAml.cpp:1621
QString HelperFunction(const int &group, const int ¶m, const int &helper) const
Returns the name of the helper function.
Definition IsisAml.cpp:1960
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:1945
QString Brief() const
Returns the brief description of the program.
Definition IsisAml.cpp:1142
const IsisParameterData * ReturnParam(const QString ¶mName) const
Returns a pointer to a parameter whose name starts with paramName.
Definition IsisAml.cpp:2149
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:1706
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:1845
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:1513
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:1797
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:1813
QString ParamDefault(const int &group, const int ¶m) const
Returns the default for a parameter in a specified group.
Definition IsisAml.cpp:1666
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:1500
QString HelperBrief(const int &group, const int ¶m, const int &helper) const
Returns the brief description of the helper button.
Definition IsisAml.cpp:1975
QString ParamInclude(const int &group, const int ¶m, const int &include) const
Returns the name of the specified included parameter.
Definition IsisAml.cpp:1637
QString GetAsString(const QString ¶mName) const
Allows the retrieval of a value for a parameter of any type.
Definition IsisAml.cpp:568
int GroupIndex(const QString &grpName) const
Given the group name get its index in group array.
Definition IsisAml.cpp:1189
void PutDouble(const QString ¶mName, const double &value)
Allows the insertion of a value for a parameter of type "double".
Definition IsisAml.cpp:393
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:1486
QString ParamInternalDefault(const int &group, const int ¶m) const
Returns the internal default for a parameter in a specified group.
Definition IsisAml.cpp:1686
int ParamNotEqualSize(const int &group, const int ¶m) const
Returns the number of values in the not equal list.
Definition IsisAml.cpp:1527
QString ProgramName() const
Returns the Program name.
Definition IsisAml.cpp:1131
int ParamIncludeSize(const int &group, const int ¶m) const
Returns the number of parameters included in this parameter's inclusions.
Definition IsisAml.cpp:1905
QString ParamMinimumInclusive(const int &group, const int ¶m) const
Returns whether the minimum value is inclusive or not.
Definition IsisAml.cpp:1430
void PutString(const QString ¶mName, const QString &value)
Allows the insertion of a value for any parameter.
Definition IsisAml.cpp:129
QString ParamGreaterThan(const int &group, const int ¶m, const int &great) const
Returns the name of the specified greaterThan parameter.
Definition IsisAml.cpp:1541
QString ParamMinimum(const int &group, const int ¶m) const
Returns the minimum value of a parameter in a specified group.
Definition IsisAml.cpp:1402
QString ParamFileMode(const int &group, const int ¶m) const
Returns the file mode for a parameter in a specified group.
Definition IsisAml.cpp:1746
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:2102
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:2034
QString ParamPath(const int &group, const int ¶m) const
Returns the default path for a filename/cube parameter.
Definition IsisAml.cpp:1726
QString HelperDescription(const int &group, const int ¶m, const int &helper) const
Returns the long description of the helper button.
Definition IsisAml.cpp:1990
void VerifyAll()
Verify all parameters.
Definition IsisAml.cpp:2572
QString ParamName(const int &group, const int ¶m) const
Returns the parameter name.
Definition IsisAml.cpp:1360
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:2005
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:1329
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:196
QString ParamMaximum(const int &group, const int ¶m) const
Returns the maximum value of a parameter in a specified group.
Definition IsisAml.cpp:1416
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