MeVisLab Resolution Independence API
SoMLLUTElement.h
Go to the documentation of this file.
1/*************************************************************************************
2**
3** Copyright 2007, MeVis Medical Solutions AG
4**
5** The user may use this file in accordance with the license agreement provided with
6** the Software or, alternatively, in accordance with the terms contained in a
7** written agreement between the user and MeVis Medical Solutions AG.
8**
9** For further information use the contact form at https://www.mevislab.de/contact
10**
11**************************************************************************************/
12
13#ifndef SO_MLLUTELEMENT_H
14#define SO_MLLUTELEMENT_H
15
16
18
19#include "SoUtilsSystem.h"
20#include <Inventor/elements/SoReplacedElement.h>
21
22class SoMLLUT;
23
24ML_START_NAMESPACE
25
26 class LUTFunction;
27
28ML_END_NAMESPACE
29
30//----------------------------------------------------------------------------------
32//----------------------------------------------------------------------------------
33class SOUTILS_EXPORT SoMLLUTElement : public SoReplacedElement {
34
35 SO_ELEMENT_HEADER(SoMLLUTElement);
36
37 public:
39 void init(SoState *state) override;
40
42 static void set(SoState *state, SoNode *node, SoMLLUT *lutNode);
43
46 static SoMLLUT *get(SoState *state);
47
50 static ml::LUTFunction *getLut(SoState *state);
51
53 static const SoMLLUTElement * getInstance(SoState *state);
54
56 SbBool matches(const SoElement *elt) const override;
57
60 SoElement *copyMatchInfo() const override;
61
63 void print(FILE *fp) const override;
64
65 SoINTERNAL public:
67 static void initClass();
68
69 protected:
72
74 ~SoMLLUTElement() override {}
75};
76
77#endif
#define SOUTILS_EXPORT
System dependent includes. Disables some compiler/linker warnings.
Open Inventor element to administrate a pointer to a SoMLLUT node in the inventor state.
static SoMLLUT * get(SoState *state)
Get/Query the element state.
void init(SoState *state) override
See inventor element documentation. Not to be called directly.
SoMLLUT * data
Saves the pointer to the currently set node.
static void set(SoState *state, SoNode *node, SoMLLUT *lutNode)
Set element state. Usually called in action routines of self written inventor nodes.
static ml::LUTFunction * getLut(SoState *state)
Get/Query the element state.
static const SoMLLUTElement * getInstance(SoState *state)
Returns the top (current) instance of the element in the state.
~SoMLLUTElement() override
Destructor.
static void initClass()
Initializes the SoMLLUTElement class.
SbBool matches(const SoElement *elt) const override
See inventor element documentation.
void print(FILE *fp) const override
See inventor element documentation.
SoElement * copyMatchInfo() const override
See inventor element documentation.
Open Inventor node implementing an interface to the ml::LUTFunction.
Definition SoMLLUT.h:29