source:
src/Actions/OptionTrait.hpp@
6a5921
| Last change on this file since 6a5921 was d41313, checked in by , 14 years ago | |
|---|---|
|
|
| File size: 1.4 KB | |
| Rev | Line | |
|---|---|---|
| [e4afb4] | 1 | /* |
| 2 | * OptionTrait.hpp | |
| 3 | * | |
| 4 | * Created on: Oct 27, 2010 | |
| 5 | * Author: heber | |
| 6 | */ | |
| 7 | ||
| 8 | #ifndef OPTIONTRAIT_HPP_ | |
| 9 | #define OPTIONTRAIT_HPP_ | |
| 10 | ||
| [56f73b] | 11 | // include config.h |
| 12 | #ifdef HAVE_CONFIG_H | |
| 13 | #include <config.h> | |
| 14 | #endif | |
| 15 | ||
| 16 | ||
| [e4afb4] | 17 | #include <string> |
| 18 | #include <typeinfo> | |
| [d41313] | 19 | #include <iosfwd> |
| [e4afb4] | 20 | |
| [ce7fdc] | 21 | namespace MoleCuilder { |
| 22 | ||
| [e4afb4] | 23 | /** Contains basic information for Options. |
| 24 | */ | |
| 25 | class OptionTrait | |
| 26 | { | |
| 27 | public: | |
| [dad802] | 28 | OptionTrait(const std::string &_token, std::type_info const * const _type, const std::string &_description, const std::string &_defaultvalue = std::string(), const std::string &_shortform = std::string()); |
| 29 | //OptionTrait(const OptionTrait &o); | |
| [807d91] | 30 | virtual ~OptionTrait(); |
| [e4afb4] | 31 | |
| 32 | // getter for the information contained | |
| 33 | const std::string& getDefaultValue() const; | |
| 34 | const std::string& getDescription() const; | |
| 35 | const std::string getKeyAndShortForm() const; | |
| 36 | const std::string& getName() const; | |
| 37 | const std::string& getShortForm() const; | |
| 38 | const std::type_info * const getType() const; | |
| 39 | const std::string getTypeName() const; | |
| 40 | ||
| 41 | // setter for information | |
| 42 | void setShortForm(const std::string _shortform); | |
| 43 | ||
| 44 | bool hasDefaultValue() const; | |
| 45 | bool hasShortForm() const; | |
| 46 | ||
| 47 | protected: | |
| 48 | const std::string Token; | |
| 49 | const std::type_info* const InternalType; | |
| 50 | const std::string Description; | |
| 51 | const std::string DefaultValue; | |
| 52 | std::string ShortForm; | |
| 53 | }; | |
| 54 | ||
| [dad802] | 55 | |
| [ce7fdc] | 56 | } |
| 57 | ||
| [d41313] | 58 | std::ostream& operator<<(std::ostream &out, const MoleCuilder::OptionTrait &t); |
| 59 | ||
| [e4afb4] | 60 | #endif /* OPTIONTRAIT_HPP_ */ |
Note:
See TracBrowser
for help on using the repository browser.
