STIR 6.4.0
ParsingObject.h
Go to the documentation of this file.
1//
2//
3/*
4 Copyright (C) 2000- 2009, Hammersmith Imanet Ltd
5 This file is part of STIR.
6
7 SPDX-License-Identifier: Apache-2.0
8
9 See STIR/LICENSE.txt for details
10*/
21#ifndef __stir_ParsingObject_H__
22#define __stir_ParsingObject_H__
23
24#include "stir/KeyParser.h"
25
26START_NAMESPACE_STIR
27
43
44class ParsingObject
45{
46public:
47 ParsingObject();
48 ParsingObject(const ParsingObject&);
49 ParsingObject& operator=(const ParsingObject&);
50 virtual ~ParsingObject() {}
51
57 bool parse(std::istream& f);
58 bool parse(const char* const filename);
60
61 void ask_parameters();
62
63 virtual std::string parameter_info();
64
65protected:
67 virtual void set_defaults();
69 virtual void initialise_keymap();
71
72 virtual bool post_processing();
73
75
85 virtual void set_key_values();
86
87private:
88 bool keymap_is_initialised;
89
90protected:
91 KeyParser parser;
92};
93
94END_NAMESPACE_STIR
95
96#endif
Declaration of class stir::KeyParser.
A class to parse Interfile headers.
Definition KeyParser.h:162
virtual void initialise_keymap()
Initialise all keywords.
Definition ParsingObject.cxx:52
virtual bool post_processing()
This will be called at the end of the parsing.
Definition ParsingObject.cxx:56
virtual void set_defaults()
Set defaults before parsing.
Definition ParsingObject.cxx:48
virtual void set_key_values()
This will be called before parsing or parameter_info is called.
Definition ParsingObject.cxx:62