libnuklei
io
nuklei
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
26
class
CoViS3DObservation
:
public
Observation
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
37
CoViS3DObservation
();
38
CoViS3DObservation
(
const
kernel::r3xs2p
& k);
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
nuklei::Observation
Definition:
Observation.h:17
nuklei
Public namespace.
Definition:
Color.cpp:9
nuklei::coord_pair
std::pair< coord_t, coord_t > coord_pair
Pair of coord_t.
Definition:
Definitions.h:27
nuklei::weight_t
double weight_t
Type for particle weights.
Definition:
Definitions.h:31
LinearAlgebra.h
nuklei::CoViS3DObservation
Definition:
CoViS3DObservation.h:26
nuklei::kernel::base
Polymorphic kernel class.
Definition:
Kernel.h:45
nuklei::kernel::r3xs2_base
Definition:
Kernel.h:505
nuklei::coord_t
double coord_t
Type for point coordinates.
Definition:
Definitions.h:25
Definitions.h
nullable.h
Observation.h
nuklei::Color
Definition:
Color.h:18
Color.h
nuklei::nullable< Matrix3 >
© 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.