Shared Memory for Sensors
Discuss here.
Effective since Build 512.
/* CSensor::SENSOR_TYPE definition copied here for reference typedef enum SENSOR_TYPE { sUnknown, sNumber, sTemperature, sVoltage, sRPM, sBytes, sBytesPerSecond, sMhz, sPercentage, sString, sPWM }; */ #define SH_MEM_VERSION 1 #define SH_MEM_NAME "SysToolSensors" #define SH_MEM_MAX_SENSORS 128 struct SHMEM_SENSOR { WCHAR m_name[255]; // Sensor name WCHAR m_section[64]; // Section in which this sensor appears CSensor::SENSOR_TYPE m_sensorType; volatile LONG m_updateInProgress; // this is 1 when systool is writing to the sensor UINT32 m_timestamp; // GetTickCount() of last update VARIANT m_value; WCHAR m_unit[8]; // Unit for text output UINT8 m_nDecimals; // Default number of decimals for formatted output }; struct SHMEM { UINT32 m_version; // Version of shared memory structure UINT16 m_nSensors; // number of records with data in m_sensors SHMEM_SENSOR m_sensors[SH_MEM_MAX_SENSORS]; };
