STIR 6.4.0
ECAT7ParametricDensityOutputFileFormat.h
Go to the documentation of this file.
1//
2//
3/*
4 Copyright (C) 2002-2007, 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*/
20
21#ifndef __stir_IO_ECAT7ParametricDensityOutputFileFormat_H__
22#define __stir_IO_ECAT7ParametricDensityOutputFileFormat_H__
23
26// include for namespace macros
28#include <string>
29
30START_NAMESPACE_STIR
31
32template <int num_dimensions, typename elemT>
33class DiscretisedDensity;
34
35template <class DiscretisedDensityT>
36class ParametricDiscretisedDensity;
37
38START_NAMESPACE_ECAT
39START_NAMESPACE_ECAT7
40
49template <class DiscretisedDensityT>
50class ECAT7ParametricDensityOutputFileFormat
51 : public RegisteredParsingObject<ECAT7ParametricDensityOutputFileFormat<DiscretisedDensityT>,
52 OutputFileFormat<ParametricDiscretisedDensity<DiscretisedDensityT>>,
53 OutputFileFormat<ParametricDiscretisedDensity<DiscretisedDensityT>>>
54{
55private:
57 OutputFileFormat<ParametricDiscretisedDensity<DiscretisedDensityT>>,
58 OutputFileFormat<ParametricDiscretisedDensity<DiscretisedDensityT>>>
59 base_type;
60
61public:
63 static const char* const registered_name;
64
65 ECAT7ParametricDensityOutputFileFormat(const NumericType& = NumericType::SHORT, const ByteOrder& = ByteOrder::native);
66
68
69 virtual NumericType set_type_of_numbers(const NumericType&, const bool warn = false);
71
72 virtual ByteOrder set_byte_order(const ByteOrder&, const bool warn = false);
73 // virtual ByteOrder set_byte_order_and_type_of_numbers(ByteOrder&, NumericType&, const bool warn = false);
74public:
75 std::string default_scanner_name;
76
77protected:
78 virtual Succeeded actual_write_to_file(std::string& output_filename,
80
81 virtual void set_defaults();
82 virtual void initialise_keymap();
83 virtual bool post_processing();
84};
85
86END_NAMESPACE_ECAT7
87END_NAMESPACE_ECAT
88END_NAMESPACE_STIR
89
90#endif
Declaration of class stir::OutputFileFormat.
Declaration of class stir::RegisteredParsingObject.
This class provides member functions to find out what byte-order your machine is and to swap numbers.
Definition ByteOrder.h:100
@ native
Definition ByteOrder.h:107
provides names for some numeric types and methods for finding their properties.
Definition NumericType.h:55
Class to store parametric images.
Definition ParametricDiscretisedDensity.h:65
Parent class for all leaves in a RegisteredObject hierarchy that do parsing of parameter files.
Definition RegisteredParsingObject.h:78
a class containing an enumeration type that can be used by functions to signal successful operation o...
Definition Succeeded.h:44
static const char *const registered_name
Name which will be used when parsing an OutputFileFormat object.
Definition ECAT7ParametricDensityOutputFileFormat.h:63
virtual void set_defaults()
Set defaults before parsing.
Definition ECAT7ParametricDensityOutputFileFormat.cxx:54
virtual bool post_processing()
This will be called at the end of the parsing.
Definition ECAT7ParametricDensityOutputFileFormat.cxx:66
virtual void initialise_keymap()
Initialise all keywords.
Definition ECAT7ParametricDensityOutputFileFormat.cxx:44
virtual ByteOrder set_byte_order(const ByteOrder &, const bool warn=false)
Set byte order to be used for output.
Definition ECAT7ParametricDensityOutputFileFormat.cxx:102
virtual NumericType set_type_of_numbers(const NumericType &, const bool warn=false)
Set type of numbers to be used for output.
Definition ECAT7ParametricDensityOutputFileFormat.cxx:85
Declaration of routines which convert ECAT things into our building blocks and vice versa.