FLImaging 6.5.8.1
SNAPFeatureFigureOperator.h
1#pragma once
2
3#include "SNAPFeatureBase.h"
4
5
6namespace FLImaging
7{
8 namespace GUI
9 {
10 class FL_EXPORT CSNAPFeatureFigureOperator : public CSNAPFeatureBase
11 {
12 SupportToDuplicateObject(CSNAPFeatureFigureOperator, *this);
13
14 public:
15 enum EOperation
16 {
17 EOperation_None = -1,
18 EOperation_Add = 0,
19 EOperation_Divide,
20 EOperation_Multiply,
21 EOperation_Subtract,
22 EOperationCount,
23 };
24
25 public:
26 CSNAPFeatureFigureOperator();
27 CSNAPFeatureFigureOperator(const CSNAPFeatureFigureOperator& rhs);
28 CSNAPFeatureFigureOperator(const CSNAPFeatureFigureOperator* pRhs);
29 virtual ~CSNAPFeatureFigureOperator();
30
31 virtual const CResult Assign(const CSNAPFeatureFigureOperator& rhs);
32 virtual const CResult Assign(const CSNAPFeatureFigureOperator* pRhs);
33
34 virtual const CResult Clear() override;
35
36 virtual const CResult SetOperation(EOperation eOperation);
37 virtual EOperation GetOperation() const;
38
39 virtual const CResult SetVariable1(const Base::CFLString<wchar_t>& flsType, const Base::CFLString<wchar_t>& flsVariable);
40 virtual Base::CFLString<wchar_t> GetVariable1() const;
41 virtual Base::CFLString<wchar_t> GetVariableType1() const;
42
43 virtual const CResult SetVariable2(const Base::CFLString<wchar_t>& flsType, const Base::CFLString<wchar_t>& flsVariable);
44 virtual Base::CFLString<wchar_t> GetVariable2() const;
45 virtual Base::CFLString<wchar_t> GetVariableType2() const;
46
47 virtual Base::CFLString<wchar_t> GetResultVariable() const;
48 virtual Base::CFLString<wchar_t> GetResultVariableType() const;
49 virtual Foundation::CFLFigure* GetResultFigure() const;
50
51 virtual const CResult Execute();
52
53 DeclareGetClassType();
54
55 public:
56 static EOperation ConvertOperationType(Base::CFLString<wchar_t> flsOperation);
57 static Base::CFLString<wchar_t> ConvertOperationType(EOperation eOperation);
58
59 protected:
60 static Base::CFLString<wchar_t> m_arrFlsOperation[EOperationCount];
61
62 EOperation m_eOperation;
63
64 Base::CFLString<wchar_t> m_flsVariableType1;
65 Base::CFLString<wchar_t> m_flsVariable1;
66
67 Base::CFLString<wchar_t> m_flsVariableType2;
68 Base::CFLString<wchar_t> m_flsVariable2;
69
70 Base::CFLString<wchar_t> m_flsResultVariableType;
71 Base::CFLString<wchar_t> m_flsResultVariable;
72
73 Foundation::CFLFigure* m_pFlfResult;
74 };
75 }
76}
77
@ Assign
CGUIPropertyItemView3DFigure 의 값을 해당 도형으로 설정하는 함수