CoViS3DObservation.h
Go to the documentation of this file.
1 // (C) Copyright Renaud Detry 2007-2015.
2 // Distributed under the GNU General Public License and under the
3 // BSD 3-Clause License (See accompanying file LICENSE.txt).
4 
5 /** @file */
6 
7 #ifndef NUKLEI_COVIS3DOBSERVATION_H
8 #define NUKLEI_COVIS3DOBSERVATION_H
9 
10 
11 #include <vector>
12 #include <string>
13 #include <utility>
14 #include <stdexcept>
15 #include <iostream>
16 #include <boost/shared_ptr.hpp>
17 
18 #include <nuklei/Definitions.h>
19 #include <nuklei/Color.h>
20 #include <nuklei/LinearAlgebra.h>
21 #include <nuklei/Observation.h>
22 #include <nuklei/nullable.h>
23 
24 namespace nuklei {
25 
27  {
28  public:
29 
30  static const double TOL;
31 
32  Type type() const { return COVIS3D; }
33 
34  NUKLEI_UNIQUE_PTR<kernel::base> getKernel() const;
35  void setKernel(const kernel::base& k);
36 
39  ~CoViS3DObservation() {};
40 
41  void setLoc(Vector3 loc);
42  Vector3 getLoc() const;
43 
44  void setDirection(Vector3 direction);
45  Vector3 getDirection() const;
46  void setPhiPsi(coord_t phi, coord_t psi);
47  coord_pair getPhiPsi() const;
48 
49  void setCovMatrix(const Matrix3& cov);
50  nullable<Matrix3> getCovMatrix() const;
51 
52  void setGamma(const Vector3& gamma);
53  const Vector3& getGamma() const;
54 
55  void setWeight(weight_t weight);
56  weight_t getWeight() const;
57 
58  void setLeftColor(const Color& color);
59  const Color& getLeftColor() const;
60  void setRightColor(const Color& color);
61  const Color& getRightColor() const;
62 
63  private:
64  kernel::r3xs2p k_;
65  nullable<Matrix3> cov_;
66  Vector3 gamma_;
67  };
68 
69 }
70 
71 #endif
Definition: Observation.h:17
Public namespace.
Definition: Color.cpp:9
std::pair< coord_t, coord_t > coord_pair
Pair of coord_t.
Definition: Definitions.h:27
double weight_t
Type for particle weights.
Definition: Definitions.h:31
Polymorphic kernel class.
Definition: Kernel.h:45
Definition: Kernel.h:505
double coord_t
Type for point coordinates.
Definition: Definitions.h:25
Definition: Color.h:18
© Copyright 2007-2013 Renaud Detry.
Distributed under the terms of the GNU General Public License (GPL).
(See accompanying file LICENSE.txt or copy at http://www.gnu.org/copyleft/gpl.html.)
Revised Sun Sep 13 2020 19:10:06.