ODeV framework
v2
|
Application error manager delegate. More...
#include "ApplicationContext.h"
#include "IErrorFirstResponder.h"
#include "IErrorFirstResponderVtbl.h"
Go to the source code of this file.
Typedefs | |
typedef struct _IApplicationErrorDelegate | IApplicationErrorDelegate |
Functions | |
sys_error_code_t | IAEDInit (IApplicationErrorDelegate *this, void *pParams) |
sys_error_code_t | IAEDOnStartApplication (IApplicationErrorDelegate *this, ApplicationContext *pxContext) |
sys_error_code_t | IAEDProcessEvent (IApplicationErrorDelegate *this, ApplicationContext *pxContext, SysEvent xEvent) |
sys_error_code_t | IAEDOnNewErrEvent (IApplicationErrorDelegate *this, SysEvent xEvent) |
boolean_t | IAEDIsLastErrorPending (IApplicationErrorDelegate *this) |
sys_error_code_t | IAEDAddFirstResponder (IApplicationErrorDelegate *this, IErrFirstResponder *pFirstResponder, uint8_t nPriority) |
sys_error_code_t | IAEDRemoveFirstResponder (IApplicationErrorDelegate *this, IErrFirstResponder *pFirstResponder) |
uint8_t | IAEDGetMaxFirstResponderPriority (const IApplicationErrorDelegate *this) |
void | IAEDResetCounter (IApplicationErrorDelegate *this) |
Application error manager delegate.
This interface is implemented by a application specific object that is in charge to manage the error events. The application can implement the SysGetErrorDelegate() function to provide its own IApplicationErrorDelegate.
Licensed under MCD-ST Liberty SW License Agreement V2, (the "License"); You may not use this file except in compliance with the License. You may obtain a copy of the License at:
http://www.st.com/software_license_agreement_liberty_v2
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
typedef struct _IApplicationErrorDelegate IApplicationErrorDelegate |
Create type name for _IApplicationErrorDelegate.
|
inline |
Add a first responder object. The first responders are grouped in a priority set. Zero is the highest priority. If an IErrFirstResponder object with the same priority was already added, then it is replaced with the new one.
this | [IN] specifies a pointer to an IApplicationErrorDelegate object. |
pFirstResponder | [IN] specifies a pointer to the a first responder object. If it is NULL then the IErrFirstResponder with nPriority priority is removed from the application error delegate. |
nPriority | [IN] specifies the priority of the error first responder. Zero is the highest priority. |
|
inline |
Get the highest priority allowed for a first responder object.
this | [IN] specifies a pointer to an IApplicationErrorDelegate object. |
|
inline |
Initialize the driver. This method should be used by a task object during the hardware initialization process.
this | [IN] specifies a pointer to an IApplicationErrorDelegate object. |
pParams | specifies a pointer to a subclass defined initialization parameters. |
|
inline |
Used by the AED to notify the system if the last error has been recovered or not.
this | [IN] specifies a pointer to an IApplicationErrorDelegate object. |
|
inline |
The INIT task call this method as soon as a new error event is posted by the application. This allows the application error delegate to provide a first respond to critical errors. The application error delegate should notify the first responder objects starting from the highest priority one.
this | [IN] specifies a pointer to an IApplicationErrorDelegate object. |
xEvent | xEvent [IN] specifies an error event |
|
inline |
Called by the system just before the control is released to the application tasks.
this | [IN] specifies a pointer to an IApplicationErrorDelegate object. |
pxContext | [IN] specifies a pointer to the application context. |
|
inline |
The INIT task uses this function to deliver an error event to the application error manager delegate object.
this | [IN] specifies a pointer to an IApplicationErrorDelegate object. |
pxContext | [IN] specifies a pointer to the application context. |
xEvent | [IN] specifies an error event |
|
inline |
Remove a first responder object rom the application error delegate.
this | [IN] specifies a pointer to an IApplicationErrorDelegate object. |
pFirstResponder | [IN] specifies a pointer to the a first responder object to be removed. |
|
inline |
Reset the counter of the AED. Usually an AED use some kind of timeout to check that all managed tasks are working fine. A task should call this method before a critical operation, that is for example a write operation in FLASH or EEPROM, or a long critical section. For convenience the managed task interface has a function IMTResetAEDCounter() that can be used by a task instead of call directly this function.
this | [IN] specifies a pointer to an IApplicationErrorDelegate object. |