ConOpSys V2970  P004.07
ANVILEX control operating system
Function_Block_Rectangular_Signal_Generator_F32_T1.h
Go to the documentation of this file.
1 //------------------------------------------------------------------------------
2 //! @file Function_Block_Rectangular_Signal_Generator_F32_T1.h
3 //! @author ANVILEX GmbH
4 //! @version V1.0
5 //! @date 08.03.2022
6 //! @brief Rectangular signal generator class header file.
7 //! @attention
8 //!
9 //! COPYRIGHT(C) 2016-2022 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 //------------------------------------------------------------------------------
67 //! @brief Class declaration description
68 //------------------------------------------------------------------------------
69 
71 {
72 
73  //----------------------------------------------------------------------------
74  // Public defines, methods and variables
75  //----------------------------------------------------------------------------
76 
77  public:
78 
79  //--------------------------------------------------------------------------
80  // Public methods
81  //--------------------------------------------------------------------------
82 
83  //!-------------------------------------------------------------------------
84  //! @brief Class constructor method.
85  //! @note None
86  //! \par Override
87  //! Not allowed
88  //! @attention Don't call this method directly.
89  //--------------------------------------------------------------------------
90 
92 
93  //!-------------------------------------------------------------------------
94  //! @brief Class destructor method.
95  //! @note None
96  //! \par Override
97  //! Not allowed
98  //! @attention Don't call this method directly.
99  //--------------------------------------------------------------------------
100 
102 
103  //!-------------------------------------------------------------------------
104  //! @brief Function block initialisation method.
105  //! @note None
106  //! \par Override
107  //! Not allowed
108  //! @attention Don't call this method directly.
109  //--------------------------------------------------------------------------
110 
111  virtual VOID Init();
112 
113  //!-------------------------------------------------------------------------
114  //! @brief Function block execution method.
115  //! @note None
116  //! \par Override
117  //! Not allowed
118  //! @attention None
119  //--------------------------------------------------------------------------
120 
121  virtual VOID Execute();
122 
123  //--------------------------------------------------------------------------
124  // Public variables
125  //--------------------------------------------------------------------------
126 
127  //--------------------------------------------------------------------------
128  // Block parameter inputs
129  //--------------------------------------------------------------------------
130 
131  //! @brief Output signal magnitude parameter
133 
134  //! @brief Output signal offset parameter
136 
137  //! @brief Output signal frequency parameter given in herz
139 
140  //! @brief Output signal duty parameter
142 
143  //! @brief Output signal offset parameter
145 
146  //! @brief Sample time parameter given in seconds
148 
149  //--------------------------------------------------------------------------
150  // Function block input connectors
151  //--------------------------------------------------------------------------
152 
153  //--------------------------------------------------------------------------
154  // Function block output connectors
155  //--------------------------------------------------------------------------
156 
157  //! @brief Output signal
159 
160  //----------------------------------------------------------------------------
161  // Protected defines, methods and variables
162  //----------------------------------------------------------------------------
163 
164  protected:
165 
166  //----------------------------------------------------------------------------
167  // Private defines, methods and variables
168  //----------------------------------------------------------------------------
169 
170  private:
171 
172  //--------------------------------------------------------------------------
173  // Private variables
174  //--------------------------------------------------------------------------
175 
176  //! @ brief Internal output status
178 
182 
183 };
184 
185 //------------------------------------------------------------------------------
186 // End of file
187 //------------------------------------------------------------------------------
int BOOL
Boolean datatype definition.
Definition: Defines.h:124
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
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
Class declaration description.
Definition: Function_Block_Rectangular_Signal_Generator_F32_T1.h:71
TBlock_Input_Connector object_f32_Duty
Output signal duty parameter.
Definition: Function_Block_Rectangular_Signal_Generator_F32_T1.h:141
virtual VOID Execute()
Function block execution method.
Definition: Function_Block_Rectangular_Signal_Generator_F32_T1.cpp:145
TBlock_Input_Connector object_f32_Magnitude
Output signal magnitude parameter.
Definition: Function_Block_Rectangular_Signal_Generator_F32_T1.h:132
virtual ~TFunction_Block_Rectangular_Signal_Generator_F32_T1()
Class destructor method.
Definition: Function_Block_Rectangular_Signal_Generator_F32_T1.cpp:102
virtual VOID Init()
Function block initialisation method.
Definition: Function_Block_Rectangular_Signal_Generator_F32_T1.cpp:110
TBlock_Output_Connector object_f32_Output
Output signal.
Definition: Function_Block_Rectangular_Signal_Generator_F32_T1.h:158
TBlock_Input_Connector object_f32_Delay
Output signal offset parameter.
Definition: Function_Block_Rectangular_Signal_Generator_F32_T1.h:144
U32 u32_Counter
Definition: Function_Block_Rectangular_Signal_Generator_F32_T1.h:179
BOOL bool_Output_Status
@ brief Internal output status
Definition: Function_Block_Rectangular_Signal_Generator_F32_T1.h:177
F32 f32_Positive_Preload_Value
Definition: Function_Block_Rectangular_Signal_Generator_F32_T1.h:180
TBlock_Input_Connector object_f32_Frequency
Output signal frequency parameter given in herz.
Definition: Function_Block_Rectangular_Signal_Generator_F32_T1.h:138
TBlock_Input_Connector object_f32_Sample_Time
Sample time parameter given in seconds.
Definition: Function_Block_Rectangular_Signal_Generator_F32_T1.h:147
F32 f32_Negative_Preload_Value
Definition: Function_Block_Rectangular_Signal_Generator_F32_T1.h:181
TBlock_Input_Connector object_f32_Offset
Output signal offset parameter.
Definition: Function_Block_Rectangular_Signal_Generator_F32_T1.h:135
TFunction_Block_Rectangular_Signal_Generator_F32_T1()
Class constructor method.
Definition: Function_Block_Rectangular_Signal_Generator_F32_T1.cpp:66