Changeset 6d78b6f for src/Parameters


Ignore:
Timestamp:
Jun 19, 2017, 8:24:16 AM (8 years ago)
Author:
Frederik Heber <frederik.heber@…>
Branches:
Action_Thermostats, Add_AtomRandomPerturbation, Add_SelectAtomByNameAction, Adding_Graph_to_ChangeBondActions, Adding_MD_integration_tests, Adding_StructOpt_integration_tests, AutomationFragmentation_failures, Candidate_v1.6.1, ChangeBugEmailaddress, ChemicalSpaceEvaluator, EmpiricalPotential_contain_HomologyGraph_documentation, Enhance_userguide, Enhanced_StructuralOptimization, Enhanced_StructuralOptimization_continued, Example_ManyWaysToTranslateAtom, Exclude_Hydrogens_annealWithBondGraph, Fix_Verbose_Codepatterns, ForceAnnealing_oldresults, ForceAnnealing_with_BondGraph, ForceAnnealing_with_BondGraph_continued, ForceAnnealing_with_BondGraph_continued_betteresults, ForceAnnealing_with_BondGraph_contraction-expansion, GeometryObjects, Gui_displays_atomic_force_velocity, IndependentFragmentGrids_IntegrationTest, JobMarket_RobustOnKillsSegFaults, JobMarket_StableWorkerPool, PythonUI_with_named_parameters, QtGui_reactivate_TimeChanged_changes, Recreated_GuiChecks, StoppableMakroAction, TremoloParser_IncreasedPrecision, TremoloParser_MultipleTimesteps
Children:
2eded3e
Parents:
db1048
git-author:
Frederik Heber <heber@…> (03/31/17 19:18:12)
git-committer:
Frederik Heber <frederik.heber@…> (06/19/17 08:24:16)
Message:

Action::outputAsPython() access Parameters via getAsStringUnvalidated().

  • otherwise this would not work for Geometry Actions as these cannot yet be validated on e.g. dry-run.
  • as python commands operate via string arguments anyway, this is nothing but an additional transformation.
  • TESTFIX: Removed XFAIL from dryrun store-session test, is working.
Location:
src/Parameters
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • src/Parameters/Parameter.hpp

    rdb1048 r6d78b6f  
    4848  bool isValidAsString(const std::string &_value) const throw(ParameterValidatorException);
    4949  const std::string getAsString() const throw(ParameterValueException);
     50  const std::string getAsStringUnvalidated() const throw(ParameterValueException);
    5051  void setAsString(const std::string &_value) throw(ParameterValueException);
    5152
  • src/Parameters/Parameter_impl.hpp

    rdb1048 r6d78b6f  
    165165  try {
    166166    return value.getAsString();
     167  } catch(ParameterException &e) {
     168    e << ParameterName(ParameterInterface::getName());
     169    throw;
     170  }
     171}
     172
     173/** Catch call to value.getAsStringUnvalidated() to add exception information.
     174 *
     175 * @return parameter value as string
     176 */
     177template<typename T>
     178inline const std::string Parameter<T>::getAsStringUnvalidated() const throw(ParameterValueException)
     179{
     180  try {
     181    return value.getAsStringUnvalidated();
    167182  } catch(ParameterException &e) {
    168183    e << ParameterName(ParameterInterface::getName());
  • src/Parameters/Value.hpp

    rdb1048 r6d78b6f  
    8585  bool isValidAsString(const std::string &_value) const throw(ParameterValidatorException);
    8686  const std::string getAsString() const throw(ParameterValueException);
     87  const std::string getAsStringUnvalidated() const throw(ParameterValueException);
    8788  void setAsString(const std::string &_value) throw(ParameterException);
    8889
  • src/Parameters/Value_impl.hpp

    rdb1048 r6d78b6f  
    185185{
    186186  return toString(get());
     187}
     188
     189/** Getter of unvalidated value, returning string.
     190 *
     191 * @return string value
     192 */
     193template <class T>
     194inline const std::string Value<T>::getAsStringUnvalidated() const throw(ParameterValueException)
     195{
     196  return toPythonString(getUnvalidated());
    187197}
    188198
Note: See TracChangeset for help on using the changeset viewer.