ConOpSys V2970  P004.07
ANVILEX control operating system
Function_Block_On_Delay.h
Go to the documentation of this file.
1 //------------------------------------------------------------------------------
2 //! @file Function_Block_On_Delay.h
3 //! @author ANVILEX GmbH
4 //! @version V1.0
5 //! @date 18.04.2016
6 //! @brief Signal turn on delay class header file.
7 //! @attention
8 //!
9 //! COPYRIGHT(C) 2016 ANVILEX GmbH
10 //!
11 //! Redistribution and use in source and binary forms, with or without
12 //! modification, are permitted provided that the following conditions are met:
13 //!
14 //! 1. Redistributions of source code must retain the above copyright notice,
15 //! this list of conditions and the following disclaimer.
16 //!
17 //! 2. Redistributions in binary form must reproduce the above copyright notice,
18 //! this list of conditions and the following disclaimer in the documentation
19 //! and/or other materials provided with the distribution.
20 //!
21 //! 3. Neither the name of ANVILEX nor the names of its contributors may be
22 //! used to endorse or promote products derived from this software without
23 //! specific prior written permission.
24 //!
25 //! THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
26 //! AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
27 //! IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
28 //! ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
29 //! LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
30 //! CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
31 //! SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
32 //! INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
33 //! CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
34 //! ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
35 //! POSSIBILITY OF SUCH DAMAGE.
36 //------------------------------------------------------------------------------
37 //
38 //
39 //
40 //------------------------------------------------------------------------------
41 
42 //------------------------------------------------------------------------------
43 // Protecting header files from mutual, recursive inclusion.
44 //------------------------------------------------------------------------------
45 
46 #pragma once
47 
48 //------------------------------------------------------------------------------
49 // Include standard libraries header files
50 //------------------------------------------------------------------------------
51 
52 //------------------------------------------------------------------------------
53 // Include thrid party header files
54 //------------------------------------------------------------------------------
55 
56 //------------------------------------------------------------------------------
57 // Include ConOpSys header files
58 //------------------------------------------------------------------------------
59 
60 #include "Function_Block_Base.h"
61 
62 //------------------------------------------------------------------------------
63 // Include ConOpSys application header files
64 //------------------------------------------------------------------------------
65 
66 //------------------------------------------------------------------------------
67 // Macros
68 //------------------------------------------------------------------------------
69 
70 //------------------------------------------------------------------------------
71 // Class declarations
72 //------------------------------------------------------------------------------
73 
74 //! @brief Boolean signal turn on delay class
76 {
77 
78  //----------------------------------------------------------------------------
79  // Public defines, methods and variables
80  //----------------------------------------------------------------------------
81 
82  public:
83 
84  //--------------------------------------------------------------------------
85  // Public methods
86  //--------------------------------------------------------------------------
87 
88  //!-------------------------------------------------------------------------
89  //! @brief Class constructor method.
90  //! @note None
91  //! \par Override
92  //! Not allowed
93  //! @attention Don't call this method directly.
94  //--------------------------------------------------------------------------
95 
97 
98  //!-------------------------------------------------------------------------
99  //! @brief Class destructor method.
100  //! @note None
101  //! \par Override
102  //! Not allowed
103  //! @attention Don't call this method directly.
104  //--------------------------------------------------------------------------
105 
106  virtual ~TFunction_Block_On_Delay();
107 
108  // Data processing related methods
109  VOID Init(); //!< Block initialisation method
110 
111  //!-------------------------------------------------------------------------
112  //! @brief Function block execution method.
113  //! @note None
114  //! \par Override
115  //! Not allowed
116  //! @attention None
117  //--------------------------------------------------------------------------
118 
119  virtual VOID Execute();
120 
121  //--------------------------------------------------------------------------
122  // Public variables
123  //--------------------------------------------------------------------------
124 
125  //--------------------------------------------------------------------------
126  // Function block parameter connectors
127  //--------------------------------------------------------------------------
128 
129  //! @brief Function block sample time in seconds
131 
132  //! @brief On delay in seconds
134 
135  //--------------------------------------------------------------------------
136  // Function block input connectors
137  //--------------------------------------------------------------------------
138 
139  //! @brief Function block input signal connector
141 
142  //--------------------------------------------------------------------------
143  // Function block output connectors
144  //--------------------------------------------------------------------------
145 
146  //! @brief Function block output signal connector
148 
149  //----------------------------------------------------------------------------
150  // Protected defines, methods and variables
151  //----------------------------------------------------------------------------
152 
153  protected:
154 
155  //----------------------------------------------------------------------------
156  // Private defines, methods and variables
157  //----------------------------------------------------------------------------
158 
159  private:
160 
161  //--------------------------------------------------------------------------
162  // Private variables
163  //--------------------------------------------------------------------------
164 
165  //! @brief Delay time in task counts
167 
168  //! @brief Delay counter
170 
171 };
172 
173 //------------------------------------------------------------------------------
174 // End of file
175 //------------------------------------------------------------------------------
void VOID
Datatypesess datatype definition.
Definition: Defines.h:105
unsigned long U32
Binary 32-Bit unsigned integer datatype defenition.
Definition: Defines.h:203
Function block base class header file.
Function block input connector class.
Definition: Block_Input_Connector.h:83
Function block output connector class.
Definition: Block_Output_Connector.h:59
Function block base class for device.
Definition: Function_Block_Base.h:96
Boolean signal turn on delay class.
Definition: Function_Block_On_Delay.h:76
TBlock_Output_Connector object_bool_Output
Function block output signal connector.
Definition: Function_Block_On_Delay.h:147
TBlock_Input_Connector object_f32_Delay
On delay in seconds.
Definition: Function_Block_On_Delay.h:133
TBlock_Input_Connector object_f32_Sample_Time
Function block sample time in seconds.
Definition: Function_Block_On_Delay.h:130
virtual ~TFunction_Block_On_Delay()
Class destructor method.
Definition: Function_Block_On_Delay.cpp:94
TFunction_Block_On_Delay()
Class constructor method.
Definition: Function_Block_On_Delay.cpp:66
virtual VOID Execute()
Function block execution method.
Definition: Function_Block_On_Delay.cpp:158
U32 u32_Delay
Delay time in task counts.
Definition: Function_Block_On_Delay.h:166
U32 u32_Delay_Counter
Delay counter.
Definition: Function_Block_On_Delay.h:169
TBlock_Input_Connector object_bool_Input
Function block input signal connector.
Definition: Function_Block_On_Delay.h:140
VOID Init()
Block initialisation method.
Definition: Function_Block_On_Delay.cpp:102