ConOpSys V2970  P004.07
ANVILEX control operating system
Block_Parameter_Connector.h
Go to the documentation of this file.
1 //------------------------------------------------------------------------------
2 // Description : ConOS-Kernel / Parameter connector implementation
3 // Filename : Block_Parameter_Connector.h
4 //------------------------------------------------------------------------------
5 
6 #pragma once
7 
8 //------------------------------------------------------------------------------
9 
10 #include "ConOpSys_Target.h"
11 
12 //--- Include headers ----------------------------------------------------------
13 
14 #include "Block_Connector.h"
15 #include "Block_Output_Connector.h"
16 
17 //------------------------------------------------------------------------------
18 
19 class TParameter_Base;
20 
21 //!-----------------------------------------------------------------------------
22 //! @brief Functional block parameter class
23 //------------------------------------------------------------------------------
24 
26 {
27 
28  //----------------------------------------------------------------------------
29  // Public defines, methods and variables
30  //----------------------------------------------------------------------------
31 
32  public:
33 
34  //!-------------------------------------------------------------------------
35  //! @brief Class constructor method.
36  //! @note None
37  //! \par Override
38  //! Not allowed
39  //! @attention Don't call this method directly.
40  //--------------------------------------------------------------------------
41 
43 
44  #if CONOPSYS_TARGET == CONOPSYS_TARGET_DEVICE
45 
46  //!-------------------------------------------------------------------------
47  //! @brief Class destructor method.
48  //! @note None
49  //! \par Override
50  //! Not allowed
51  //! @attention Don't call this method directly.
52  //--------------------------------------------------------------------------
53 
55 
56  #endif
57 
58  #if CONOPSYS_TARGET == CONOPSYS_TARGET_VDC
59 
60  //!-------------------------------------------------------------------------
61  //! @brief Class destructor method.
62  //! @note None
63  //! \par Override
64  //! Not allowed
65  //! @attention Don't call this method directly.
66  //--------------------------------------------------------------------------
67 
69 
70  #endif
71 
72  //--------------------------------------------------------------------------
73 
74  // Data type processing related methods
75  VOID Set_Type( TBlock_Connector_Type enum_Connector_Type );
76 
77  // Interconnection related methods
79  BOOL Connect( TBlock_Output_Connector *object_Output_Connector );
80  BOOL Connect( BOOL *bool_Variable );
81  BOOL Connect( F32 *f32_Variable );
82 
83  // Operators
84  VOID operator=( TBlock_Output_Connector &object_Connector ); //!< Connect to the output connector
85  VOID operator=( TParameter_Base &object_Parameter ); //!< Connect to the parameter
86 
87  VOID operator=( BOOL *bool_Variable ); //!< Connect to the BOOL variable
88  VOID operator=( BOOL bool_Value ); //!< Connect to the immediate BOOL value
89 
90  VOID operator=( U8 *u8_Variable ); //!< Connect to the U8 variable
91  VOID operator=( U8 u8_Value ); //!< Connect to the immediate U8 value
92  VOID operator=( I8 *i8_Variable ); //!< Connect to the I8 variable
93  VOID operator=( I8 i8_Value ); //!< Connect to the immediate I8 value
94 
95  VOID operator=( U16 *u16_Variable ); //!< Connect to the U16 variable
96  VOID operator=( U16 u16_Value ); //!< Connect to the immediate U16 value
97  VOID operator=( I16 *i16_Variable ); //!< Connect to the I16 variable
98  VOID operator=( I16 i16_Value ); //!< Connect to the immediate I16 value
99 
100  VOID operator=( U32 *u32_Variable ); //!< Connect to the U32 variable
101  VOID operator=( U32 u32_Value ); //!< Connect to the immediate U32 value
102  VOID operator=( I32 *i32_Variable ); //!< Connect to the I32 variable
103  VOID operator=( I32 i32_Value ); //!< Connect to the immediate I32 value
104 
105  VOID operator=( U64 *u64_Variable ); //!< Connect to the U64 variable
106  VOID operator=( U64 u64_Value ); //!< Connect to the immediate U64 value
107  VOID operator=( I64 *i64_Variable ); //!< Connect to the I64 variable
108  VOID operator=( I64 i64_Value ); //!< Connect to the immediate I64 value
109 
110 // VOID operator=( U128 *u128_Variable ); //!< Connect to the U128 variable
111 // VOID operator=( U128 u128_Value ); //!< Connect to the immediate U128 value
112 // VOID operator=( I128 *i128_Variable ); //!< Connect to the I128 variable
113 // VOID operator=( I128 i128_Value ); //!< Connect to the immediate I128 value
114 
115 // VOID operator=( U256 *u256_Variable ); //!< Connect to the U256 variable
116 // VOID operator=( U256 u256_Value ); //!< Connect to the immediate U256 value
117 // VOID operator=( I256 *i256_Variable ); //!< Connect to the I256 variable
118 // VOID operator=( I256 i256_Value ); //!< Connect to the immediate I256 value
119 
120 // VOID operator=( F16 *f16_Variable ); //!< Connect to the F16 variable
121 // VOID operator=( F16 f16_Value ); //!< Connect to the immediate F16 value
122  VOID operator=( F32 *f32_Variable ); //!< Connect to the F32 variable
123  VOID operator=( F32 f32_Value ); //!< Connect to the immediate F32 value
124  VOID operator=( F64 *f64_Variable ); //!< Connect to the F64 variable
125  VOID operator=( F64 f64_Value ); //!< Connect to the immediate F64 value
126 // VOID operator=( F80 *f80_Variable ); //!< Connect to the F80 variable
127 // VOID operator=( F80 f80_Value ); //!< Connect to the immediate F80 value
128 // VOID operator=( F128 *f128_Variable ); //!< Connect to the F128 variable
129 // VOID operator=( F128 f128_Value ); //!< Connect to the immediate F128 value
130 // VOID operator=( F256 *f256_Variable ); //!< Connect to the F256 variable
131 // VOID operator=( F256 f256_Value ); //!< Connect to the immediate F256 value
132 
133 // BOOL Create( TConfigurationFile *ConfigurationFile ); // Create connector
134 // TConnectorAddress *AddressOfAssignedConnector; // Address of the input connector
135 
136  TConOpSys_Variant object_Pointer; //!< Pointer to the input signal external data storage
137 
138  //----------------------------------------------------------------------------
139  // Protected defines, methods and variables
140  //----------------------------------------------------------------------------
141 
142  protected:
143 
144  //----------------------------------------------------------------------------
145  // Private defines, methods and variables
146  //----------------------------------------------------------------------------
147 
148  private:
149 
150  // OPTIMISATION: Implement this flags as 32 bit unsigned word. This will be save huge part of RAM allocated by the functional blocks.
151 
152  //! @brief Connector initialised flag
154 
155  //! @brief Connector initialisation error flag
157 
158  //! @brief Connector connected to signal source flag
160 
161 };
162 
163 //------------------------------------------------------------------------------
164 // End of file
165 //------------------------------------------------------------------------------
Block connecttor class header file.
TBlock_Connector_Type
Function block connector type class
Definition: Block_Connector.h:107
Block output connecttor class header file.
ConOpSys deploy target definitions file.
int BOOL
Boolean datatype definition.
Definition: Defines.h:124
unsigned long long U64
Binary 64-Bit unsigned integer datatype defenition.
Definition: Defines.h:213
long I32
2s Compliment 32-Bit signed integer datatype defenition
Definition: Defines.h:206
unsigned char U8
Binary 8-Bit unsigned integer datatype defenition.
Definition: Defines.h:183
signed char I8
2s Compliment 8-Bit signed integer datatype defenition
Definition: Defines.h:186
void VOID
Datatypesess datatype definition.
Definition: Defines.h:105
unsigned long U32
Binary 32-Bit unsigned integer datatype defenition.
Definition: Defines.h:203
float F32
IEEE-754 32-Bit single presession floating point numbers datatype defenition.
Definition: Defines.h:324
short I16
2s Compliment 16-Bit signed integer datatype defenition
Definition: Defines.h:196
long long I64
2s Compliment 64-Bit signed integer datatype defenition
Definition: Defines.h:217
double F64
IEEE-754 64-Bit double presession floating point numbers datatype defenition.
Definition: Defines.h:327
unsigned short U16
Binary 16-Bit unsigned integer datatype defenition.
Definition: Defines.h:193
Function block connector base class.
Definition: Block_Connector.h:390
Function block output connector class.
Definition: Block_Output_Connector.h:59
Functional block parameter class.
Definition: Block_Parameter_Connector.h:26
BOOL bool_Initialized
Connector initialised flag.
Definition: Block_Parameter_Connector.h:153
TBlock_Parameter_Connector()
Class constructor method.
Definition: Block_Parameter_Connector.cpp:30
VOID operator=(I64 i64_Value)
Connect to the immediate I64 value.
TConOpSys_Variant object_Pointer
Pointer to the input signal external data storage.
Definition: Block_Parameter_Connector.h:136
BOOL bool_Initialization_Error
Connector initialisation error flag.
Definition: Block_Parameter_Connector.h:156
VOID Set_Type(TBlock_Connector_Type enum_Connector_Type)
Definition: Block_Parameter_Connector.cpp:62
VOID operator=(I64 *i64_Variable)
Connect to the I64 variable.
BOOL Is_Connected()
Definition: Block_Parameter_Connector.cpp:77
~TBlock_Parameter_Connector()
Class destructor method.
Definition: Block_Parameter_Connector.cpp:40
VOID operator=(TBlock_Output_Connector &object_Connector)
Connect to the output connector.
Definition: Block_Parameter_Connector.cpp:201
BOOL Connect(TBlock_Output_Connector *object_Output_Connector)
Definition: Block_Parameter_Connector.cpp:89
BOOL bool_Connected
Connector connected to signal source flag.
Definition: Block_Parameter_Connector.h:159
VOID operator=(U64 u64_Value)
Connect to the immediate U64 value.
VOID operator=(U64 *u64_Variable)
Connect to the U64 variable.
ConOpSys variant class.
Definition: ConOpSys_Variant.h:851
Parameter base class.
Definition: Parameter_Base.h:60