| http://www.sim.no/ http://www.coin3d.org/

SoBoolOperation.h
1 /**************************************************************************\
2 *
3 * This file is part of the Coin 3D visualization library.
4 * Copyright (C) by Kongsberg Oil & Gas Technologies.
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU General Public License
8 * ("GPL") version 2 as published by the Free Software Foundation.
9 * See the file LICENSE.GPL at the root directory of this source
10 * distribution for additional information about the GNU GPL.
11 *
12 * For using Coin with software that can not be combined with the GNU
13 * GPL, and for taking advantage of the additional benefits of our
14 * support services, please contact Kongsberg Oil & Gas Technologies
15 * about acquiring a Coin Professional Edition License.
16 *
17 * See http://www.coin3d.org/ for more information.
18 *
19 * Kongsberg Oil & Gas Technologies, Bygdoy Alle 5, 0257 Oslo, NORWAY.
20 * http://www.sim.no/ sales@sim.no coin-support@coin3d.org
21 *
22 \**************************************************************************/
23
24 #ifndef COIN_SOBOOLOPERATION_H
25 #define COIN_SOBOOLOPERATION_H
26
27 #include <Inventor/engines/SoSubEngine.h>
28 #include <Inventor/engines/SoEngineOutput.h>
29 #include <Inventor/fields/SoMFBool.h>
30 #include <Inventor/fields/SoMFEnum.h>
31
32
33 class COIN_DLL_API SoBoolOperation : public SoEngine {
34 typedef SoEngine inherited;
35
36 SO_ENGINE_HEADER(SoBoolOperation);
37
38 public:
39 enum Operation {
40 CLEAR, SET,
41 A, NOT_A,
42 B, NOT_B,
43 A_OR_B, NOT_A_OR_B, A_OR_NOT_B, NOT_A_OR_NOT_B,
44 A_AND_B, NOT_A_AND_B, A_AND_NOT_B, NOT_A_AND_NOT_B,
45 A_EQUALS_B, A_NOT_EQUALS_B
46 };
47
48 SoMFBool a;
49 SoMFBool b;
50 SoMFEnum operation;
51
52 SoEngineOutput output; //SoMFBool
53 SoEngineOutput inverse; //SoMFBool
54
55 SoBoolOperation();
56
57 static void initClass();
58
59 protected:
60 virtual ~SoBoolOperation(void);
61
62 private:
63 virtual void evaluate();
64 };
65
66 #endif // !COIN_SOBOOLOPERATION_H
SoBoolOperation::inverse
SoEngineOutput inverse
Definition: SoBoolOperation.h:53
SoBoolOperation::NOT_A
Definition: SoBoolOperation.h:41
SoEngine
SoEngine is the base class for Coin engines.Engines enables the application programmers to make compl...
Definition: SoEngine.h:34
SoBoolOperation
The SoBoolOperation engine evaluates expressions of boolean logic.The multivalue fields SoBoolOperati...
Definition: SoBoolOperation.h:33
SoBoolOperation::output
SoEngineOutput output
Definition: SoBoolOperation.h:52
SoBoolOperation::operation
SoMFEnum operation
Definition: SoBoolOperation.h:50
SoBoolOperation::Operation
Operation
Definition: SoBoolOperation.h:39
SoBoolOperation::NOT_A_OR_NOT_B
Definition: SoBoolOperation.h:43
SoMFEnum
The SoMFEnum class is a container for a set of enumerated values.This field is used where nodes...
Definition: SoMFEnum.h:30
SoBoolOperation::NOT_B
Definition: SoBoolOperation.h:42
SoBoolOperation::NOT_A_AND_NOT_B
Definition: SoBoolOperation.h:44
SoMFBool
The SoMFBool class is a container for SbBool values.This field is used where nodes, engines or other field containers needs to store multiple boolean on/off or TRUE/FALSE values.
Definition: SoMFBool.h:30
SoBoolOperation::b
SoMFBool b
Definition: SoBoolOperation.h:49
SoEngineOutput
The SoEngineOutput class is the output slots in SoEngine instances.SoEngineOutput has methods for con...
Definition: SoEngineOutput.h:36
SoBoolOperation::SET
Definition: SoBoolOperation.h:40
SoEngine::evaluate
virtual void evaluate(void)=0
SoBoolOperation::a
SoMFBool a
Definition: SoBoolOperation.h:48

Copyright © 1998-2010 by Kongsberg Oil & Gas Technologies. All rights reserved.