FLImaging 6.5.8.1
SNAPFeaturePrimitive.h
1#pragma once
2
3#include "SNAPFeatureVariable.h"
4
5
6namespace FLImaging
7{
8 namespace GUI
9 {
10 template<typename T>
11 class FL_EXPORT CSNAPFeaturePrimitive : public CSNAPFeatureVariable
12 {
13 SupportToDuplicateObject(CSNAPFeaturePrimitive<T>, *this);
14
15 public:
16 static T ConvertValue(const Base::CFLString<wchar_t>& flsInput);
17 static Base::CFLString<wchar_t> ConvertStringValue(const T& tInput);
18 static Base::CFLString<wchar_t> ConvertCompatibleStringValue(const Base::CFLString<wchar_t>& flsInput);
19
20 public:
21 CSNAPFeaturePrimitive();
22 CSNAPFeaturePrimitive(const CSNAPFeaturePrimitive& rhs);
23 CSNAPFeaturePrimitive(const CSNAPFeaturePrimitive* pRhs);
24 virtual ~CSNAPFeaturePrimitive();
25
26 virtual const CResult Assign(const CSNAPFeaturePrimitive& rhs);
27 virtual const CResult Assign(const CSNAPFeaturePrimitive* pRhs);
28
29 virtual T GetValue() const;
30 virtual const CResult SetValue(const T& tValue);
31
32 virtual EDefinedParameterType GetParameterType() const override;
33
34 DeclareGetClassType();
35
36 protected:
37 virtual Base::CFLString<wchar_t> InternalConvert(const Base::CFLString<wchar_t>& flsInput) const override;
38
39 template<typename T>
40 friend class CGUIPropertyMenuNodePrimitive;
41 };
42 }
43}
44
@ Assign
Set the value of CGUIPropertyItemView3DFigure to the specified figure.