Carna  Version 3.0.1
MIPLayer.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2010 - 2015 Leonid Kostrykin
3  *
4  * Chair of Medical Engineering (mediTEC)
5  * RWTH Aachen University
6  * Pauwelsstr. 20
7  * 52074 Aachen
8  * Germany
9  *
10  */
11 
12 #ifndef MIPLAYER_H_6014714286
13 #define MIPLAYER_H_6014714286
14 
19 #include <Carna/Carna.h>
20 #include <Carna/base/noncopyable.h>
21 #include <Carna/base/math/Span.h>
22 #include <Carna/base/math.h>
24 
25 namespace Carna
26 {
27 
28 namespace presets
29 {
30 
31 
32 
33 // ----------------------------------------------------------------------------------
34 // presets :: MIPLayer
35 // ----------------------------------------------------------------------------------
36 
42 class CARNA_LIB MIPLayer
43 {
44 
46 
47  const base::BlendFunction* myFunction;
48 
49 public:
50 
51  EIGEN_MAKE_ALIGNED_OPERATOR_NEW
52 
55 
58  MIPLayer
59  ( const base::math::Span< base::HUV >& huRange
60  , const base::math::Vector4f& color
61  , const base::BlendFunction& function = LAYER_FUNCTION_REPLACE );
62 
65  MIPLayer
66  ( base::HUV firstHuv, base::HUV lastHuv
67  , const base::math::Vector4f& color
68  , const base::BlendFunction& function = LAYER_FUNCTION_REPLACE );
69 
75 
80 
85  void setFunction( const base::BlendFunction& layerFunction );
86 
91  const base::BlendFunction& function() const;
92 
93 }; // presets :: MIPLayer
94 
95 
96 
97 } // namespace Carna :: presets
98 
99 } // namespace Carna
100 
101 #endif // MIPLAYER_H_6014714286
Defines Carna::base::math namespace and CARNA_FOR_VECTOR3UI.
static const base::BlendFunction LAYER_FUNCTION_REPLACE
Defines "replacing" blending function.
Definition: MIPLayer.h:54
Defines Carna::base::math::Span.
Eigen::Matrix< float, 4, 1 > Vector4f
Defines vector.
Definition: math.h:195
Defines an HUV range and the way it's visualized within a MIPStage.
Definition: MIPLayer.h:42
base::math::Span< base::HUV > huRange
Holds the HUV range that this layer covers as described here.
Definition: MIPLayer.h:74
static const base::BlendFunction LAYER_FUNCTION_ADD
Defines the additive blending function.
Definition: MIPLayer.h:53
Defines how alpha blending is to be performed.
Definition: BlendFunction.h:39
signed short HUV
Represents values in .
Definition: Carna.h:56
Defines Carna::base::BlendFunction.
#define NON_COPYABLE
Features class it is placed in as non-copyable.
Definition: noncopyable.h:109
base::math::Vector4f color
Holds the color of this layer as described here.
Definition: MIPLayer.h:79