ConOpSys V2970  P004.07
ANVILEX control operating system
Function_Block_Window_Integrator.h
Go to the documentation of this file.
1 //------------------------------------------------------------------------------
2 //! @file Function_Block_Window_Integrator.h
3 //! @author ANVILEX GmbH
4 //! @version V1.0
5 //! @date 18.05.2016
6 //! @brief Window comtarator 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 // Protecting header files from mutual, recursive inclusion.
40 //------------------------------------------------------------------------------
41 
42 #pragma once
43 
44 //------------------------------------------------------------------------------
45 // Include standard libraries header files
46 //------------------------------------------------------------------------------
47 
48 //------------------------------------------------------------------------------
49 // Include thrid party header files
50 //------------------------------------------------------------------------------
51 
52 //------------------------------------------------------------------------------
53 // Include ConOpSys header files
54 //------------------------------------------------------------------------------
55 
56 #include "Function_Block_Base.h"
57 
58 //------------------------------------------------------------------------------
59 // Include ConOpSys application header files
60 //------------------------------------------------------------------------------
61 
62 //------------------------------------------------------------------------------
63 // Macros
64 //------------------------------------------------------------------------------
65 
66 //! @brief Window integrator function block class
68 {
69 
70  //----------------------------------------------------------------------------
71 
72  public:
73 
74  //!-------------------------------------------------------------------------
75  //! @brief Class constructor method.
76  //! @note None
77  //! \par Override
78  //! Not allowed
79  //! @attention Don't call this method directly.
80  //--------------------------------------------------------------------------
81 
83 
84  //!-------------------------------------------------------------------------
85  //! @brief Class destructor method.
86  //! @note None
87  //! \par Override
88  //! Not allowed
89  //! @attention Don't call this method directly.
90  //--------------------------------------------------------------------------
91 
93 
94  //!-------------------------------------------------------------------------
95  //! @brief Function block initialisation method.
96  //! @note None
97  //! \par Override
98  //! Not allowed
99  //! @attention Don't call this method directly.
100  //--------------------------------------------------------------------------
101 
102  virtual VOID Init();
103 
104  //!-------------------------------------------------------------------------
105  //! @brief Function block execution method.
106  //! @note None
107  //! \par Override
108  //! Not allowed
109  //! @attention None
110  //--------------------------------------------------------------------------
111 
112  virtual VOID Execute();
113 
114  //--------------------------------------------------------------------------
115  // Function block parameter connectors
116  //--------------------------------------------------------------------------
117 
121 
122  //--------------------------------------------------------------------------
123  // Function block input connectors
124  //--------------------------------------------------------------------------
125 
127 
128  //--------------------------------------------------------------------------
129  // Function block output connectors
130  //--------------------------------------------------------------------------
131 
132  TBlock_Output_Connector object_f32_Output; //!< Integrator block output
133 
134  //----------------------------------------------------------------------------
135 
136  protected:
137 
138  //----------------------------------------------------------------------------
139 
140  private:
141 
144 };
145 
146 //------------------------------------------------------------------------------
147 // Export references to the objects
148 //------------------------------------------------------------------------------
149 
150 //------------------------------------------------------------------------------
151 // Export references to the functions
152 //------------------------------------------------------------------------------
153 
154 //------------------------------------------------------------------------------
155 // End of file
156 //------------------------------------------------------------------------------
void VOID
Datatypesess datatype definition.
Definition: Defines.h:105
float F32
IEEE-754 32-Bit single presession floating point numbers datatype defenition.
Definition: Defines.h:324
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
Window integrator function block class.
Definition: Function_Block_Window_Integrator.h:68
TBlock_Input_Connector object_f32_Low_Limit
Low limit.
Definition: Function_Block_Window_Integrator.h:118
virtual VOID Execute()
Function block execution method.
Definition: Function_Block_Window_Integrator.cpp:129
TBlock_Input_Connector object_f32_Input
Input signal.
Definition: Function_Block_Window_Integrator.h:126
TBlock_Input_Connector object_f32_Sample_Time
Sample time.
Definition: Function_Block_Window_Integrator.h:120
F32 f32_Span
Definition: Function_Block_Window_Integrator.h:142
virtual ~TFunction_Block_Window_Integrator()
Class destructor method.
Definition: Function_Block_Window_Integrator.cpp:109
TFunction_Block_Window_Integrator()
Class constructor method.
Definition: Function_Block_Window_Integrator.cpp:66
F32 f32_Integrator
Definition: Function_Block_Window_Integrator.h:143
TBlock_Input_Connector object_f32_High_Limit
High limit.
Definition: Function_Block_Window_Integrator.h:119
TBlock_Output_Connector object_f32_Output
Integrator block output.
Definition: Function_Block_Window_Integrator.h:132
virtual VOID Init()
Function block initialisation method.
Definition: Function_Block_Window_Integrator.cpp:117