Medical Imaging Interaction Toolkit  2018.4.99-12ad79a3
Medical Imaging Interaction Toolkit
mitkPAProbe.h
Go to the documentation of this file.
1 /*============================================================================
2 
3 The Medical Imaging Interaction Toolkit (MITK)
4 
5 Copyright (c) German Cancer Research Center (DKFZ)
6 All rights reserved.
7 
8 Use of this source code is governed by a 3-clause BSD license that can be
9 found in the LICENSE file.
10 
11 ============================================================================*/
12 
13 #ifndef MITKPHOTOACOUSTICPROBE_H
14 #define MITKPHOTOACOUSTICPROBE_H
15 
17 
18 #include <mitkCommon.h>
19 
20 //Includes for smart pointer usage
21 #include "mitkCommon.h"
22 #include "itkLightObject.h"
23 
24 #include "mitkPALightSource.h"
25 #include <vector>
26 #include <tinyxml.h>
27 
28 namespace mitk {
29  namespace pa {
34  class MITKPHOTOACOUSTICSLIB_EXPORT Probe : public itk::LightObject
35  {
36  public:
37 
38  mitkClassMacroItkParent(Probe, itk::LightObject)
39  mitkNewMacro2Param(Self, std::string, bool)
40  mitkNewMacro2Param(Self, const char*, bool)
41 
42  const std::string XML_TAG_PROBE = "Probe";
43  const std::string XML_TAG_LIGHT_SOURCE = "LightSource";
44 
45  LightSource::PhotonInformation GetNextPhoton(double rng1, double rnd2, double rnd3, double rnd4,
46  double rnd5, double rnd6, double rnd7, double rnd8);
47 
48  bool IsValid();
49 
50  Probe(std::string xmlFile, bool verbose);
51  Probe(const char* fileStream, bool verbose);
52  ~Probe() override;
53 
54  protected:
55 
56  std::vector<LightSource::Pointer> m_LightSources;
57  bool m_IsValid;
58  double m_TotalEnergy;
59  bool m_Verbose;
60 
61  void InitProbe(TiXmlDocument document);
62  };
63  }
64 }
65 #endif // MITKPHOTOACOUSTICPROBE_H
std::vector< LightSource::Pointer > m_LightSources
Definition: mitkPAProbe.h:56
DataCollection - Class to facilitate loading/accessing structured data.
#define mitkNewMacro2Param(classname, typea, typeb)
Definition: mitkCommon.h:85
#define mitkClassMacroItkParent(className, SuperClassName)
Definition: mitkCommon.h:49
bool verbose(false)
The Probe class The representation of a Probe.
Definition: mitkPAProbe.h:34
double m_TotalEnergy
Definition: mitkPAProbe.h:58
#define MITKPHOTOACOUSTICSLIB_EXPORT