QUAOAR STUDIO // Mobius API
poly_BooleanFunc.h
1 //-----------------------------------------------------------------------------
2 // Created on: 28 February 2020
3 //-----------------------------------------------------------------------------
4 // Copyright (c) 2020-present, Sergey Slyadnev
5 // All rights reserved.
6 //
7 // Redistribution and use in source and binary forms, with or without
8 // modification, are permitted provided that the following conditions are met:
9 //
10 // * Redistributions of source code must retain the above copyright
11 // notice, this list of conditions and the following disclaimer.
12 // * Redistributions in binary form must reproduce the above copyright
13 // notice, this list of conditions and the following disclaimer in the
14 // documentation and/or other materials provided with the distribution.
15 // * Neither the name of Sergey Slyadnev nor the
16 // names of all contributors may be used to endorse or promote products
17 // derived from this software without specific prior written permission.
18 //
19 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
20 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
21 // WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
22 // DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE FOR ANY
23 // DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24 // (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25 // LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
26 // ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
28 // SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 //-----------------------------------------------------------------------------
30 
31 #ifndef poly_BooleanFunc_HeaderFile
32 #define poly_BooleanFunc_HeaderFile
33 
34 // Poly includes
35 #include <mobius/poly_RealFunc.h>
36 
37 // Core includes
38 #include <mobius/core_Ptr.h>
39 
40 namespace mobius {
41 
46 {
47 public:
48 
51 
55  poly_BooleanFunc(const t_ptr<poly_RealFunc>& opLeft,
56  const t_ptr<poly_RealFunc>& opRight)
57  //
58  : m_opLeft(opLeft), m_opRight(opRight) {}
59 
60 public:
61 
63  const t_ptr<poly_RealFunc>& GetLeftOperand() const
64  {
65  return m_opLeft;
66  }
67 
69  const t_ptr<poly_RealFunc>& GetRightOperand() const
70  {
71  return m_opRight;
72  }
73 
74 protected:
75 
76  t_ptr<poly_RealFunc> m_opLeft;
77  t_ptr<poly_RealFunc> m_opRight;
78 
79 };
80 
81 }
82 
83 #endif
mobius
Defines an exception class C1 that inherits an exception class C2.
Definition: bspl_Decompose.h:41
mobius::poly_RealFunc
Definition: poly_RealFunc.h:47
mobius::poly_BooleanFunc::m_opLeft
t_ptr< poly_RealFunc > m_opLeft
Left operand of the Boolean function.
Definition: poly_BooleanFunc.h:76
mobius::poly_BooleanFunc::poly_BooleanFunc
poly_BooleanFunc(const t_ptr< poly_RealFunc > &opLeft, const t_ptr< poly_RealFunc > &opRight)
Definition: poly_BooleanFunc.h:55
mobius::poly_BooleanFunc
Definition: poly_BooleanFunc.h:45
mobius::poly_BooleanFunc::GetLeftOperand
const t_ptr< poly_RealFunc > & GetLeftOperand() const
Definition: poly_BooleanFunc.h:63
mobius::poly_BooleanFunc::GetRightOperand
const t_ptr< poly_RealFunc > & GetRightOperand() const
Definition: poly_BooleanFunc.h:69
mobius::poly_BooleanFunc::poly_BooleanFunc
poly_BooleanFunc()
Default ctor.
Definition: poly_BooleanFunc.h:50
mobius::poly_BooleanFunc::m_opRight
t_ptr< poly_RealFunc > m_opRight
Right operand of the Boolean function.
Definition: poly_BooleanFunc.h:77