ConOpSys V2970  P004.07
ANVILEX control operating system
Block_Output_Connector.h
Go to the documentation of this file.
1 //------------------------------------------------------------------------------
2 //! @file Block_Output_Connector.h
3 //! @URL $HeadURL: https://192.168.3.4:8443/svn/P004_07/ConOpSys/Blocks/Block_Output_Connector.h $
4 //! @author $Author: minch $ (ANVILEX)
5 //! @version $Revision: 2946 $
6 //! @date $Date: 2022-02-27 01:12:30 +0500 (So, 27 Feb 2022) $
7 //! @brief Block output connecttor class header file.
8 //! @attention
9 //!
10 //! COPYRIGHT(C) 2015-2021 ANVILEX
11 //!
12 //! Redistribution and use in source and binary forms, with or without
13 //! modification, are permitted provided that the following conditions are met:
14 //!
15 //! 1. Redistributions of source code must retain the above copyright notice,
16 //! this list of conditions and the following disclaimer.
17 //!
18 //! 2. Redistributions in binary form must reproduce the above copyright notice,
19 //! this list of conditions and the following disclaimer in the documentation
20 //! and/or other materials provided with the distribution.
21 //!
22 //! 3. Neither the name of ANVILEX nor the names of its contributors may be
23 //! used to endorse or promote products derived from this software without
24 //! specific prior written permission.
25 //!
26 //! THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
27 //! AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
28 //! IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
29 //! ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
30 //! LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
31 //! CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
32 //! SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
33 //! INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
34 //! CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
35 //! ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
36 //! POSSIBILITY OF SUCH DAMAGE.
37 //------------------------------------------------------------------------------
38 
39 //------------------------------------------------------------------------------
40 // Protecting header files from mutual, recursive inclusion.
41 //------------------------------------------------------------------------------
42 
43 #pragma once
44 
45 //------------------------------------------------------------------------------
46 // Include ConOpSys header files
47 //------------------------------------------------------------------------------
48 
49 #include "ConOpSys_Target.h"
50 
51 #include "Block_Connector.h"
52 
53 //------------------------------------------------------------------------------
54 // Class declarationd
55 //------------------------------------------------------------------------------
56 
57 //! @brief Function block output connector class
59 {
60 
61  //----------------------------------------------------------------------------
62  // Public defines, methods and variables
63  //----------------------------------------------------------------------------
64 
65  public:
66 
67  //!-------------------------------------------------------------------------
68  //! @brief Class constructor method.
69  //! @note None
70  //! \par Override
71  //! Not allowed
72  //! @attention Don't call this method directly.
73  //! \par UML diagram
74  //! @dotfile TBlock_Output_Connector__TBlock_Output_Connector.dt
75  //--------------------------------------------------------------------------
76 
78 
79  //!-------------------------------------------------------------------------
80  //! @brief Class destructor method.
81  //! @note None
82  //! \par Override
83  //! Not allowed
84  //! @attention Don't call this method directly.
85  //! \par UML diagram
86  //! @dotfile TBlock_Output_Connector__,TBlock_Output_Connector.dt
87  //--------------------------------------------------------------------------
88 
89  #if CONOPSYS_TARGET == CONOPSYS_TARGET_DEVICE
90 
92 
93  #endif
94 
95  //!-------------------------------------------------------------------------
96  //! @brief Returns interconnection status of the output connector
97  //! @note None
98  //! @return BOOL - Interconnection status of the output connector
99  //! @retval false - Output connector has invalid interconnection
100  //! @retval true - Output connector valid interconnection
101  //! \par Override
102  //! Not allowed
103  //! @attention None
104  //! \par UML diagram
105  //! @dotfile TBlock_Output_Connector__Is_Connected.dt
106  //--------------------------------------------------------------------------
107 
108  BOOL Is_Connected();
109 
110  //--------------------------------------------------------------------------
111  // Public operators
112  //--------------------------------------------------------------------------
113 /*
114  //! @brief Connect output connector to the BOOL variable
115  //! \par UML diagram
116  //! @dotfile TBlock_Output_Connector__operator=.dt
117  VOID operator=( BOOL *bool_Variable );
118 */
119  //! @brief Connect output connector to the immediate BOOL value
120  //! \par UML diagram
121  //! @dotfile TBlock_Output_Connector__operator=.dt
122  VOID operator=( BOOL bool_Value );
123 /*
124  //! @brief Connect output connector to the U8 variable
125  //! \par UML diagram
126  //! @dotfile TBlock_Output_Connector__operator=.dt
127  VOID operator=( U8 *u8_Variable );
128 */
129  //! @brief Connect output connector to the immediate U8 value
130  //! \par UML diagram
131  //! @dotfile TBlock_Output_Connector__operator=.dt
132  VOID operator=( U8 u8_Value );
133 /*
134  //! @brief Connect output connector to the I8 variable
135  //! \par UML diagram
136  //! @dotfile TBlock_Output_Connector__operator=.dt
137  VOID operator=( I8 *i8_Variable );
138 */
139  //! @brief Connect output connector to the immediate I8 value
140  //! \par UML diagram
141  //! @dotfile TBlock_Output_Connector__operator=.dt
142  VOID operator=( I8 i8_Value );
143 /*
144  //! @brief Connect output connector to the U16 variable
145  //! \par UML diagram
146  //! @dotfile TBlock_Output_Connector__operator=.dt
147  VOID operator=( U16 *u16_Variable );
148 */
149  //! @brief Connect output connector to the immediate U16 value
150  //! \par UML diagram
151  //! @dotfile TBlock_Output_Connector__operator=.dt
152  VOID operator=( U16 u16_Value );
153 /*
154  //! @brief Connect output connector to the I16 variable
155  //! \par UML diagram
156  //! @dotfile TBlock_Output_Connector__operator=.dt
157  VOID operator=( I16 *i16_Variable );
158 */
159  //! @brief Connect to the immediate I16 value
160  //! \par UML diagram
161  //! @dotfile TBlock_Output_Connector__operator=.dt
162  VOID operator=( I16 i16_Value );
163 /*
164  //! @brief Connect output connector to the U32 variable
165  //! \par UML diagram
166  //! @dotfile TBlock_Output_Connector__operator=.dt
167  VOID operator=( U32 *u32_Variable );
168 */
169  //! @brief Connect output connector to the immediate U32 value
170  //! \par UML diagram
171  //! @dotfile TBlock_Output_Connector__operator=.dt
172  VOID operator=( U32 u32_Value );
173 /*
174  //! @brief Connect output connector to the I32 variable
175  //! \par UML diagram
176  //! @dotfile TBlock_Output_Connector__operator=.dt
177  VOID operator=( I32 *i32_Variable );
178 */
179  //! @brief Connect output connector to the immediate I32 value
180  //! \par UML diagram
181  //! @dotfile TBlock_Output_Connector__operator=.dt
182  VOID operator=( I32 i32_Value );
183 /*
184  //! @brief Connect output connector to the U64 variable
185  //! \par UML diagram
186  //! @dotfile TBlock_Output_Connector__operator=.dt
187  VOID operator=( U64 *u64_Variable );
188 */
189  //! @brief Connect output connector to the immediate U64 value
190  //! \par UML diagram
191  //! @dotfile TBlock_Output_Connector__operator=.dt
192  VOID operator=( U64 u64_Value );
193 /*
194  //! @brief Connect output connector to the I64 variable
195  //! \par UML diagram
196  //! @dotfile TBlock_Output_Connector__operator=.dt
197  VOID operator=( I64 *i64_Variable );
198 */
199  //! @brief Connect output connector to the immediate I64 value
200  //! \par UML diagram
201  //! @dotfile TBlock_Output_Connector__operator=.dt
202  VOID operator=( I64 i64_Value );
203 /*
204  //! @brief Connect output connector to the U128 variable
205  //! \par UML diagram
206  //! @dotfile TBlock_Output_Connector__operator=.dt
207  #if ( PARAMETER_DATATYPE_U128_SUPPORT == (true) )
208  VOID operator=( U128 *u128_Variable );
209  #endif
210 */
211  //! @brief Connect output connector to the immediate U128 value
212  //! \par UML diagram
213  //! @dotfile TBlock_Output_Connector__operator=.dt
214  #if ( PARAMETER_DATATYPE_U128_SUPPORT == (true) )
215  VOID operator=( U128 u128_Value );
216  #endif
217 /*
218  //! @brief Connect output connector to the I128 variable
219  //! \par UML diagram
220  //! @dotfile TBlock_Output_Connector__operator=.dt
221  #if ( PARAMETER_DATATYPE_I128_SUPPORT == (true) )
222  VOID operator=( I128 *i128_Variable );
223  #endif
224 */
225  //! @brief Connect output connector to the immediate I128 value
226  //! \par UML diagram
227  //! @dotfile TBlock_Output_Connector__operator=.dt
228  #if ( PARAMETER_DATATYPE_I128_SUPPORT == (true) )
229  VOID operator=( I128 i128_Value );
230  #endif
231 /*
232  //! @brief Connect output connector to the U256 variable
233  //! \par UML diagram
234  //! @dotfile TBlock_Output_Connector__operator=.dt
235  #if ( PARAMETER_DATATYPE_U256_SUPPORT == (true) )
236  VOID operator=( U256 *u256_Variable );
237  #endif
238 */
239  //! @brief Connect output connector to the immediate U256 value
240  //! \par UML diagram
241  //! @dotfile TBlock_Output_Connector__operator=.dt
242  #if ( PARAMETER_DATATYPE_U256_SUPPORT == (true) )
243  VOID operator=( U256 u256_Value );
244  #endif
245 /*
246  //! @brief Connect output connector to the I256 variable
247  //! \par UML diagram
248  //! @dotfile TBlock_Output_Connector__operator=.dt
249  #if ( PARAMETER_DATATYPE_I256_SUPPORT == (true) )
250  VOID operator=( I256 *i256_Variable );
251  #endif
252 */
253  //! @brief Connect output connector to the immediate I256 value
254  //! \par UML diagram
255  //! @dotfile TBlock_Output_Connector__operator=.dt
256  #if ( PARAMETER_DATATYPE_I256_SUPPORT == (true) )
257  VOID operator=( I256 i256_Value );
258  #endif
259 /*
260  //! @brief Connect output connector to the F16 variable
261  //! \par UML diagram
262  //! @dotfile TBlock_Output_Connector__operator=.dt
263  #if ( PARAMETER_DATATYPE_F16_SUPPORT == (true) )
264  VOID operator=( F16 *f16_Variable );
265  #endif
266 */
267  //! @brief Connect output connector to the immediate F16 value
268  //! \par UML diagram
269  //! @dotfile TBlock_Output_Connector__operator=.dt
270  #if ( PARAMETER_DATATYPE_F16_SUPPORT == (true) )
271  VOID operator=( F16 f16_Value );
272  #endif
273 /*
274  //! @brief Connect output connector to the F32 variable
275  //! \par UML diagram
276  //! @dotfile TBlock_Output_Connector__operator=.dt
277  VOID operator=( F32 *f32_Variable );
278 */
279  //! @brief Connect output connector to the immediate F32 value
280  //! \par UML diagram
281  //! @dotfile TBlock_Output_Connector__operator=.dt
282  VOID operator=( F32 f32_Value );
283 /*
284  //! @brief Connect output connector to the F64 variable
285  //! \par UML diagram
286  //! @dotfile TBlock_Output_Connector__operator=.dt
287  VOID operator=( F64 *f64_Variable );
288 */
289  //! @brief Connect output connector to the immediate F64 value
290  //! \par UML diagram
291  //! @dotfile TBlock_Output_Connector__operator=.dt
292  VOID operator=( F64 f64_Value );
293 /*
294  //! @brief Connect output connector to the F80 variable
295  //! \par UML diagram
296  //! @dotfile TBlock_Output_Connector__operator=.dt
297  #if ( PARAMETER_DATATYPE_F80_SUPPORT == (true) )
298  VOID operator=( F80 *f80_Variable );
299  #endif
300 */
301  //! @brief Connect output connector to the immediate F80 value
302  //! \par UML diagram
303  //! @dotfile TBlock_Output_Connector__operator=.dt
304  #if ( PARAMETER_DATATYPE_F80_SUPPORT == (true) )
305  VOID operator=( F80 f80_Value );
306  #endif
307 /*
308  //! @brief Connect output connector to the F128 variable
309  //! \par UML diagram
310  //! @dotfile TBlock_Output_Connector__operator=.dt
311  #if ( PARAMETER_DATATYPE_F128_SUPPORT == (true) )
312  VOID operator=( F128 *f128_Variable );
313  #endif
314 */
315  //! @brief Connect output connector to the immediate F128 value
316  //! \par UML diagram
317  //! @dotfile TBlock_Output_Connector__operator=.dt
318  #if ( PARAMETER_DATATYPE_F128_SUPPORT == (true) )
319  VOID operator=( F128 f128_Value );
320  #endif
321 /*
322  //! @brief Connect output connector to the F256 variable
323  //! \par UML diagram
324  //! @dotfile TBlock_Output_Connector__operator=.dt
325  #if ( PARAMETER_DATATYPE_F256_SUPPORT == (true) )
326  VOID operator=( F256 *f256_Variable );
327  #endif
328 */
329  //! @brief Connect output connector to the immediate F256 value
330  //! \par UML diagram
331  //! @dotfile TBlock_Output_Connector__operator=.dt
332  #if ( PARAMETER_DATATYPE_F256_SUPPORT == (true) )
333  VOID operator=( F256 f256_Value );
334  #endif
335 
336  //----------------------------------------------------------------------------
337  // Public defines, methods and variables related to VDC
338  //----------------------------------------------------------------------------
339 
340  #if CONOPSYS_TARGET == CONOPSYS_TARGET_VDC
341 
342  public:
343 
344  //--------------------------------------------------------------------------
345  // Public methods related to VDC
346  //--------------------------------------------------------------------------
347 
348  // Constructor
349  __fastcall TBlock_Output_Connector( TComponent* Owner, TList *Storage );
350 
351  //!-------------------------------------------------------------------------
352  //! @brief Class destructor method.
353  //! @note None
354  //! \par Override
355  //! Not allowed
356  //! @attention Don't call this method directly.
357  //! \par UML diagram
358  //! @dotfile TBlock_Output_Connector__,TBlock_Output_Connector.dt
359  //--------------------------------------------------------------------------
360 
362 
363  // Repaint output connector
364  VOID __fastcall Paint();
365 
366  #endif
367 
368  //----------------------------------------------------------------------------
369  // Protected defines, methods and variables
370  //----------------------------------------------------------------------------
371 
372  protected:
373 
374  //----------------------------------------------------------------------------
375  // Private defines, methods and variables
376  //----------------------------------------------------------------------------
377 
378  private:
379 
380  //--------------------------------------------------------------------------
381  // Private variables
382  //--------------------------------------------------------------------------
383 
384  //! @brief Output connected flag
386 
387 };
388 
389 //------------------------------------------------------------------------------
390 // End of file
391 //------------------------------------------------------------------------------
Block 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
long double F80
IEEE-754 80-Bit extended presession floating point numbers datatype defenition.
Definition: Defines.h:330
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
BOOL Is_Connected()
Returns interconnection status of the output connector.
Definition: Block_Output_Connector.cpp:112
VOID operator=(BOOL bool_Value)
Connect output connector to the immediate BOOL value.
Definition: Block_Output_Connector.cpp:124
~TBlock_Output_Connector()
Class destructor method.
Definition: Block_Output_Connector.cpp:104
__fastcall ~TBlock_Output_Connector()
Class destructor method.
BOOL bool_Connected
Output connected flag.
Definition: Block_Output_Connector.h:385
VOID __fastcall Paint()
Definition: Block_Output_Connector.cpp:842
TBlock_Output_Connector()
Class constructor method.
Definition: Block_Output_Connector.cpp:82
Definition: List.h:15