INOS
cinostaskex.h File Reference

The extended task class. More...

#include <inos.h>
#include <inos_lib.h>
#include <cinosbus.h>
#include <cinosmcnvram.h>
#include <cmcresult.h>
#include <cinostaskexdef.h>
#include <cincotype.h>
#include <cinoseventloggerdef.h>
#include <cinostaskexstatesdef.h>
#include <cinosmcdata.h>
#include <unordered_map>
#include <string>
#include <atomic>
#include <cinostaskextmpl.h>
Include dependency graph for cinostaskex.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  CINOSTaskExMsgTrigger
 
class  CINOSTaskExMsgTriggerVar
 
class  CINOSTaskExMsgTriggerEvent
 
class  CINOSTaskExMsgTriggerTicks
 
class  CINOSTaskExMsgNode
 
class  CINOSTaskExDeferredMsg
 
class  CINOSTaskExCmdDesc
 
class  CINOSTaskExMsg
 
class  CINOSTaskExMsgUser
 
class  CINOSTaskEx
 
class  CINOSTaskExTracer
 
class  CINOSMcSync
 
class  CINOSMcSyncEvent
 
class  CINOSMcSyncMsg
 
class  CINCOTaskExProcedure
 

Macros

#define INOS_TASKEX_MESSAGE(apFormat, aArgs...)
 
#define DF_INOS_TASKEX_MAX_CMD   128
 
#define DF_INOS_TASKEX_MAX_AND_TRG   4
 
#define DF_INOS_TASKEX_MAX_TRG_VAL_NAME   256
 
#define DF_INOS_TASKEX_STARTUP_PRIO   DF_INOS_TASK_PRIO_USER_HIGHEST
 
#define INOS_MCLOG_REPLY_EX(aMsg, rpl, err)
 
#define INOS_MCLOG_REPLY(aMsg)   INOS_MCLOG_REPLY_EX(aMsg,eRplOk,0)
 

Functions

CINOSMcMessage * GetMessageHnd (bool abSearch=true)
 
tMcAppError SendMessage (uint32 auMsgType, uint32 auMsgCode, uint32 auFlags, CINOSMcData *apInfo=0)
 
tMcAppError SendMessage (uint32 auMsgType, uint32 auMsgCode, uint32 auFlags, const char *apText, CINOSMcData *apInfo=0)
 
CMcResult PostMessage (uint32 auMsgType, uint32 auMsgCode, uint32 auFlags, CINOSMcData *apInfo=0)
 
CMcResult PostMessage (uint32 auMsgType, uint32 auMsgCode, uint32 auFlags, const char *apText, CINOSMcData *apInfo=0)
 
CMcResult ModifyMessage (tMsgId aiId, uint32 auMsgType, uint32 auMsgCode, uint32 auFlags, CINOSMcData *apInfo=0, const char *apText=nullptr)
 
CMcResult AckMessage (const CINOSTask *apOwner, uint32 auMsgType=0xffffffff, uint32 auFlag=0)
 
CINOSMcNvRamGrpGetNvRamGrp (bool abSearch=true)
 
void MsgEvent (CINOSTaskExMsg *apMsg, const char *apName, uint32 auMs=0)
 
void MsgEventFlg (CINOSTaskExMsg *apMsg, const char *apName, uint32 auFlags, uint32 auMs=0)
 
void MsgEvent (CINOSTaskExMsg *apMsg, const char *apName, uint64 auTicks, uint8 auBusId)
 
void MsgEventFlg (CINOSTaskExMsg *apMsg, const char *apName, uint64 auTicks, uint8 auBusId, uint32 auFlags)
 
CMcResult PostMessageEx (uint32 auMsgType, uint32 auMsgCode, uint32 auFlags, const char *apProperties)
 
CMcResult PostMessageEx (uint32 auMsgType, uint32 auMsgCode, uint32 auFlags, CINOSMcData *apInfo, const char *apProperties)
 
CMcResult ModifyMessage (tMsgId aiId, uint32 auMsgType, uint32 auMsgCode, uint32 auFlags, CINOSMcData *apInfo)
 
CMcResult ModifyMessageEx (tMsgId aiId, uint32 auMsgType, uint32 auMsgCode, uint32 auFlags, const char *apProperties)
 
CMcResult ModifyMessageEx (tMsgId aiId, uint32 auMsgType, uint32 auMsgCode, uint32 auFlags, CINOSMcData *apInfo, const char *apProperties)
 
tMcAppError SendMessageEx (uint32 auMsgType, uint32 auMsgCode, uint32 auFlags, const char *apProperties)
 
tMcAppError SendMessageEx (uint32 auMsgType, uint32 auMsgCode, uint32 auFlags, CINOSMcData *apInfo, const char *apProperties)
 
CMcResult AckMessage (tMsgId auMsgId, uint32 auFlags)
 
CMcResult AckMessageDelayed (tMsgId aMsgId, uint32 auFlags, uint32 auTime)
 
CMcResult AckMessage (uint32 auMsgCode, uint32 auFlags, uint32 auMask)
 
CMcResult AckMessageDelayed (uint32 auMsgCode, uint32 auFlags, uint32 auMask, uint32 auTime)
 
CINOSTaskExActualTaskEx ()
 

Detailed Description

The extended task class.

Author
Ch. Hirzel
Remarks
project         : INOS
language        : Gnu C++
system          : Power-PC

This class provides the extended task functionality

Macro Definition Documentation

◆ INOS_MCLOG_REPLY_EX

#define INOS_MCLOG_REPLY_EX (   aMsg,
  rpl,
  err 
)
Value:
{ \
if( CINOSEventLogger::Instance().IsLevelActive(DF_INOS_EVENT_LOGGER_LEVEL_TASKMSG) ) { \
if (!aMsg->GetNoTrace()) { \
double tim = double(0.000001)*g_pTarget->ConvertToNanoSeconds(GetSystemTicks()); \
"RPL:TimStp,%f:Rec,%s:Id," PFIID ":Snd,%s:Que,%1.6fms:Typ," PFU32 ":Ret," PF0X32,\
tim, GetName(), aMsg->GetId(), GetName(), tim, (uint32)rpl, (uint32) err);\
} \
} \
}
Definition cinosmcmodule.h:1900

◆ INOS_TASKEX_MESSAGE

Function Documentation

◆ ActualTaskEx()

CINOSTaskEx * ActualTaskEx ( )
inline
Returns
Pointer to the actual running task ex. returns nullptr if task is not an CINOSTaskEx.