/******************************************************************************* * vTraceSetObjectName * * Registers the names of queues, semaphores and other kernel objects in the * recorder's Object Property Table, at the given handle and object class. ******************************************************************************/ void vTraceSetObjectName(traceObjectClass objectclass, objectHandleType handle, const char* name) { static uint32_t idx; if (handle == 0) { vTraceError("Illegal handle (0) in vTraceSetObjectName."); return; } switch(objectclass) { case TRACE_CLASS_TASK: case TRACE_CLASS_ISR: case TRACE_CLASS_SEMAPHORE: case TRACE_CLASS_MUTEX: case TRACE_CLASS_QUEUE: break; default: vTraceError("Illegal object class in vTraceSetObjectName"); break; } if (handle > RecorderDataPtr->ObjectPropertyTable.NumberOfObjectsPerClass[objectclass]) { switch(objectclass) { case TRACE_CLASS_TASK: vTraceError("Not enough TASK handles - increase NTask in trcConfig.h"); break; case TRACE_CLASS_ISR: vTraceError("Not enough ISR handles - increase NISR in trcConfig.h"); break; case TRACE_CLASS_SEMAPHORE: vTraceError("Not enough SEMAPHORE handles - increase NSemaphore in trcConfig.h"); break; case TRACE_CLASS_MUTEX: vTraceError("Not enough MUTEX handles - increase NMutex in trcConfig.h"); break; case TRACE_CLASS_QUEUE: vTraceError("Not enough QUEUE handles - increase NQueue in trcConfig.h"); break; } } else { idx = uiIndexOfObject(handle, objectclass); if (traceErrorMessage == NULL) { (void)strncpy((char*)&(RecorderDataPtr->ObjectPropertyTable.objbytes[idx]), name, RecorderDataPtr->ObjectPropertyTable.NameLengthPerClass[ objectclass ] ); } } }
/******************************************************************************* * vTraceSetObjectName * * Registers the names of queues, semaphores and other kernel objects in the * recorder's Object Property Table, at the given handle and object class. ******************************************************************************/ void vTraceSetObjectName(traceObjectClass objectclass, objectHandleType handle, const char* name) { static uint16_t idx; TRACE_ASSERT(name != NULL, "vTraceSetObjectName: name == NULL", ); if (objectclass >= TRACE_NCLASSES) { vTraceError("Illegal object class in vTraceSetObjectName"); return; } if (handle == 0) { vTraceError("Illegal handle (0) in vTraceSetObjectName."); return; } if (handle > RecorderDataPtr->ObjectPropertyTable.NumberOfObjectsPerClass[objectclass]) { /* ERROR */ vTraceError(pszTraceGetErrorNotEnoughHandles(objectclass)); } else { idx = uiIndexOfObject(handle, objectclass); if (traceErrorMessage == NULL) { (void)strncpy((char*)&(RecorderDataPtr->ObjectPropertyTable.objbytes[idx]), name, RecorderDataPtr->ObjectPropertyTable.NameLengthPerClass[ objectclass ]); } } }