| 42 |
|
* |
| 43 |
|
* Created by Charles F. Vardeman II on 11/16/05. |
| 44 |
|
* @author Charles F. Vardeman II |
| 45 |
< |
* @version $Id: ParameterManager.hpp,v 1.6 2009-11-25 20:02:04 gezelter Exp $ |
| 45 |
> |
* @version $Id$ |
| 46 |
|
* |
| 47 |
|
*/ |
| 48 |
|
|
| 50 |
|
#define UTILS_PARAMETERMANAGER_HPP |
| 51 |
|
|
| 52 |
|
#include <iostream> |
| 53 |
+ |
#include <cstdio> |
| 54 |
|
|
| 55 |
|
#include <stdlib.h> |
| 56 |
|
#include <vector> |
| 235 |
|
bool have##NAME() { return !NAME.empty();} \ |
| 236 |
|
TYPE get##NAME() { return NAME.getData();} |
| 237 |
|
|
| 238 |
+ |
#define DeclareAlterableParameter(NAME, TYPE) \ |
| 239 |
+ |
private: \ |
| 240 |
+ |
Parameter<TYPE> NAME; \ |
| 241 |
+ |
public: \ |
| 242 |
+ |
bool have##NAME() { return !NAME.empty();} \ |
| 243 |
+ |
TYPE get##NAME() { return NAME.getData();} \ |
| 244 |
+ |
bool set##NAME(TYPE s) { return NAME.setData(s);} \ |
| 245 |
|
|
| 246 |
|
|
| 247 |
+ |
|
| 248 |
|
#define DefineParameter(NAME,KEYWORD) \ |
| 249 |
|
NAME.setKeyword(KEYWORD); \ |
| 250 |
|
parameters_.insert(std::map<std::string, ParameterBase*>::value_type(std::string(KEYWORD), static_cast<ParameterBase*>(&NAME))); |