STIR  6.2.0
ECAT7DynamicDiscretisedDensityOutputFileFormat.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 */
22 #ifndef __stir_IO_ECAT7DynamicDiscretisedDensityOutputFileFormat_H__
23 #define __stir_IO_ECAT7DynamicDiscretisedDensityOutputFileFormat_H__
24 
27 // include for namespace macros
29 #include <string>
30 
31 START_NAMESPACE_STIR
32 
33 class DynamicDiscretisedDensity;
34 
35 START_NAMESPACE_ECAT
36 START_NAMESPACE_ECAT7
37 
48  : public RegisteredParsingObject<ECAT7DynamicDiscretisedDensityOutputFileFormat,
49  OutputFileFormat<DynamicDiscretisedDensity>,
50  OutputFileFormat<DynamicDiscretisedDensity>>
51 {
52 private:
55  OutputFileFormat<DynamicDiscretisedDensity>>
56  base_type;
57 
58 public:
60  static const char* const registered_name;
61 
62  ECAT7DynamicDiscretisedDensityOutputFileFormat(const NumericType& = NumericType::SHORT, const ByteOrder& = ByteOrder::native);
63 
65 
66  virtual NumericType set_type_of_numbers(const NumericType&, const bool warn = false);
68 
69  virtual ByteOrder set_byte_order(const ByteOrder&, const bool warn = false);
70  // virtual ByteOrder set_byte_order_and_type_of_numbers(ByteOrder&, NumericType&, const bool warn = false);
71 public:
72  std::string default_scanner_name;
73 
74 protected:
75  virtual Succeeded actual_write_to_file(std::string& output_filename, const DynamicDiscretisedDensity& density) const;
76 
77  virtual void set_defaults();
78  virtual void initialise_keymap();
79  virtual bool post_processing();
80 };
81 
82 END_NAMESPACE_ECAT7
83 END_NAMESPACE_ECAT
84 END_NAMESPACE_STIR
85 
86 #endif
Implementation of OutputFileFormat paradigm for the ECAT7 format.
Definition: ECAT7DynamicDiscretisedDensityOutputFileFormat.h:47
This class provides member functions to find out what byte-order your machine is and to swap numbers...
Definition: ByteOrder.h:99
Declaration of class stir::OutputFileFormat.
Class of multiple image frames, one for each time frame Each time frame is a DiscretisedDensity<3,float>
Definition: DynamicDiscretisedDensity.h:45
Parent class for all leaves in a RegisteredObject hierarchy that do parsing of parameter files...
Definition: RegisteredParsingObject.h:77
static const char *const registered_name
Name which will be used when parsing an OutputFileFormat object.
Definition: ECAT7DynamicDiscretisedDensityOutputFileFormat.h:60
provides names for some numeric types and methods for finding their properties.
Definition: NumericType.h:54
a class containing an enumeration type that can be used by functions to signal successful operation o...
Definition: Succeeded.h:43
Declaration of class stir::RegisteredParsingObject.
Declaration of routines which convert ECAT things into our building blocks and vice versa...