You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

51 lines
1.6 KiB

#pragma once
#include "cmsis_os.h"
#include "zbasic.h"
namespace iflytop {
class ZTaskInfo {
public:
osThreadId Id;
};
class SysMgr {
private:
/* data */
public:
ZTaskInfo m_task[30] = {0};
int m_ntask = 0;
static SysMgr* ins();
void initedFinished();
void dumpSysInfo();
size_t osGetSysRunTime();
/***********************************************************************************************************************
* HeapMgr *
***********************************************************************************************************************/
size_t osGetMinimumEverFreeHeapSize();
size_t osGetFreeHeapSize();
size_t osGetTotalHeapSize();
size_t osGetFreeSysHeapSize();
/***********************************************************************************************************************
* TaskInfo *
***********************************************************************************************************************/
osThreadId osGetId(int offset);
uint32_t osTaskStackRemainingSize(osThreadId id);
const char* osTaskName(osThreadId id);
void osTaskName(osThreadId id, char* name, int bufsize);
void osTaskStackRemainingSize(osThreadId id, uint16_t* remainsize);
void osTaskPriority(osThreadId id, uint16_t* priority);
void osTaskGetState(osThreadId id, char* state);
int32_t getTaskNum();
};
} // namespace iflytop