source: src/Parameters/ValueInterface.hpp@ ff4fff9

CombiningParticlePotentialParsing
Last change on this file since ff4fff9 was b56114, checked in by Frederik Heber <heber@…>, 10 years ago

FIX: Action..::outputAsPython now accesses parameters via getUnvalidated().

  • added Value::getUnvalidated() and Parameter::getUnvalidated() for access at store-session.
  • this fixes a bug when OutputAsAction had been used whose filename would no longer be valid as the file now exists. This would cause an assertion and the whole OutputAsAction would fail.
  • Property mode set to 100644
File size: 824 bytes
Line 
1/*
2 * ValueInterface.hpp
3 *
4 * Created on: Sep 28, 2011
5 * Author: heber
6 */
7
8#ifndef VALUEINTERFACE_HPP_
9#define VALUEINTERFACE_HPP_
10
11// include config.h
12#ifdef HAVE_CONFIG_H
13#include <config.h>
14#endif
15
16#include <string>
17
18#include "ParameterExceptions.hpp"
19#include "ValueAsString.hpp"
20
21/** Interface definition for general parameter values.
22 *
23 */
24template <class T>
25class ValueInterface
26{
27public:
28 virtual ~ValueInterface() {};
29
30 // direct functions
31 virtual bool isValid(const T & _value) const throw(ParameterValidatorException)=0;
32 virtual const T & get() const throw(ParameterValueException)=0;
33 virtual const T & getUnvalidated() const throw(ParameterValueException)=0;
34 virtual void set(const T & _value) throw(ParameterException)=0;
35 virtual bool isSet() const=0;
36};
37
38#endif /* VALUEINTERFACE_HPP_ */
Note: See TracBrowser for help on using the repository browser.