Telematics SDK - Interface Specification
v1.46.62
|
Data Structures | |
class | telux::therm::ThermalFactory |
ThermalFactory allows creation of thermal manager. More... | |
class | telux::therm::IThermalListener |
Listener class for getting notifications when thermal service status changes. The client needs to implement these methods as briefly as possible and avoid blocking calls in it. The methods in this class can be invoked from multiple different threads. Client needs to make sure that the implementation is thread-safe. More... | |
struct | telux::therm::BoundCoolingDevice |
class | telux::therm::IThermalManager |
IThermalManager provides interface to get thermal zone and cooling device information. More... | |
class | telux::therm::ITripPoint |
ITripPoint provides interface to get trip point type, trip point temperature and hysteresis value for that trip point. More... | |
class | telux::therm::IThermalZone |
IThermalZone provides interface to get type of the sensor, the current temperature reading, trip points and the cooling devices binded etc. More... | |
class | telux::therm::ICoolingDevice |
ICoolingDevice provides interface to get type of the cooling device, the maximum throttle state and the currently requested throttle state of the cooling device. More... | |
Variables | |
const uint32_t | telux::therm::DEFAULT_TIMEOUT = 30 |
This section contains APIs related to Thermal Management such as read list of thermal zones, cooling devices and binding info.
class telux::therm::ThermalFactory |
ThermalFactory allows creation of thermal manager.
Public Member Functions | |
virtual std::shared_ptr< IThermalManager > | getThermalManager (telux::common::InitResponseCb callback=nullptr, telux::common::ProcType operType=telux::common::ProcType::LOCAL_PROC)=0 |
virtual std::shared_ptr< IThermalShutdownManager > | getThermalShutdownManager (telux::common::InitResponseCb callback=nullptr)=0 |
Static Public Member Functions | |
static ThermalFactory & | getInstance () |
Protected Member Functions | |
ThermalFactory () | |
virtual | ~ThermalFactory () |
|
protected |
|
protectedvirtual |
|
static |
Get Thermal Factory instance.
|
pure virtual |
Get thermal manager instance associated with a telux::common::ProcType to get list of thermal zones (sensors) and cooling devices supported by the device
[in] | callback | Optional callback pointer to get the response of the manager initialization. |
[in] | oprType | Operation type telux::common::ProcType. Local operation type fetches the thermal zones information where the application is running. Remote operation type fetches the thermal zones information of modem if the application is running on external application processor(EAP) and vice versa. |
|
pure virtual |
Get thermal shutdown manager instance to control automatic thermal shutdown and get relevant notifications
[in] | callback | Optional callback pointer to get the response of the manager initialization. |
class telux::therm::IThermalListener |
Listener class for getting notifications when thermal service status changes. The client needs to implement these methods as briefly as possible and avoid blocking calls in it. The methods in this class can be invoked from multiple different threads. Client needs to make sure that the implementation is thread-safe.
Public Member Functions | |
virtual | ~IThermalListener () |
![]() | |
virtual void | onServiceStatusChange (ServiceStatus status) |
virtual | ~IServiceStatusListener () |
|
virtual |
Destructor of IThermalListener
struct telux::therm::BoundCoolingDevice |
Defines the trip points to which cooling device is bound.
Data Fields | ||
---|---|---|
int | coolingDeviceId |
Cooling device Id associated with trip points |
vector< shared_ptr< ITripPoint > > | bindingInfo |
List of trippoints bound to the cooling device |
class telux::therm::IThermalManager |
IThermalManager provides interface to get thermal zone and cooling device information.
Public Member Functions | |
virtual telux::common::ServiceStatus | getServiceStatus ()=0 |
virtual telux::common::Status | registerListener (std::weak_ptr< IThermalListener > listener)=0 |
virtual telux::common::Status | deregisterListener (std::weak_ptr< IThermalListener > listener)=0 |
virtual std::vector< std::shared_ptr< IThermalZone > > | getThermalZones ()=0 |
virtual std::vector< std::shared_ptr< ICoolingDevice > > | getCoolingDevices ()=0 |
virtual std::shared_ptr< IThermalZone > | getThermalZone (int thermalZoneId)=0 |
virtual std::shared_ptr< ICoolingDevice > | getCoolingDevice (int coolingDeviceId)=0 |
virtual | ~IThermalManager () |
|
virtual |
Destructor of IThermalManager
|
pure virtual |
This status indicates whether the object is in a usable state.
|
pure virtual |
Registers the listener for Thermal Manager indications.
[in] | listener | - pointer to implemented listener. |
|
pure virtual |
Deregisters the previously registered listener.
[in] | listener | - pointer to registered listener that needs to be removed. |
|
pure virtual |
Retrieves the list of thermal zone info like type, temperature and trip points.
|
pure virtual |
Retrieves the list of thermal cooling device info like type, maximum throttle state and currently requested throttle state.
|
pure virtual |
Retrieves the thermal zone details like temperature, type and trip point info for the given thermal zone identifier.
[in] | thermalZoneId | Thermal zone identifier |
|
pure virtual |
Retrieves the cooling device details like type of the device, maximum cooling level and current cooling level for the given cooling device identifier.
[in] | coolingDeviceId | Cooling device identifier |
class telux::therm::ITripPoint |
ITripPoint provides interface to get trip point type, trip point temperature and hysteresis value for that trip point.
Public Member Functions | |
virtual TripType | getType () const =0 |
virtual int | getThresholdTemp () const =0 |
virtual int | getHysteresis () const =0 |
virtual bool | operator== (const ITripPoint &rHs) const =0 |
virtual | ~ITripPoint () |
|
virtual |
Destructor of ITripPoint
|
pure virtual |
Retrieves trip point type.
|
pure virtual |
Retrieves the temperature above which certain trip point will be fired.
|
pure virtual |
Retrieves hysteresis value that is the difference between current temperature of the device and the temperature above which certain trip point will be fired. Units: MilliDegree Celsius
|
pure virtual |
Operator for compare two trip points
class telux::therm::IThermalZone |
IThermalZone provides interface to get type of the sensor, the current temperature reading, trip points and the cooling devices binded etc.
Public Member Functions | |
virtual int | getId () const =0 |
virtual std::string | getDescription () const =0 |
virtual int | getCurrentTemp () const =0 |
virtual int | getPassiveTemp () const =0 |
virtual std::vector< std::shared_ptr< ITripPoint > > | getTripPoints () const =0 |
virtual std::vector< BoundCoolingDevice > | getBoundCoolingDevices () const =0 |
virtual | ~IThermalZone () |
|
virtual |
Destructor of IThermalZone
|
pure virtual |
Retrieves the identifier for thermal zone.
|
pure virtual |
Retrieves the type of sensor.
|
pure virtual |
Retrieves the current temperature of the device. Units: MilliDegree Celsius
|
pure virtual |
Retrieves the temperature of passive trip point for the zone. Default value is 0. Valid values: 0 (disabled) or greater than 1000 (enabled), Units: MilliDegree Celsius
|
pure virtual |
Retrieves trip point information like trip type, trip temperature and hysteresis.
|
pure virtual |
Retrieves the list of cooling device and the associated trip points bound to cooling device in given thermal zone.
class telux::therm::ICoolingDevice |
ICoolingDevice provides interface to get type of the cooling device, the maximum throttle state and the currently requested throttle state of the cooling device.
Public Member Functions | |
virtual int | getId () const =0 |
virtual std::string | getDescription () const =0 |
virtual int | getMaxCoolingLevel () const =0 |
virtual int | getCurrentCoolingLevel () const =0 |
virtual | ~ICoolingDevice () |
|
virtual |
Destructor of ICoolingDevice
|
pure virtual |
Retrieves the identifier of the thermal cooling device.
|
pure virtual |
Retrieves the type of the cooling device.
|
pure virtual |
Retrieves the maximum cooling level of the cooling device.
|
pure virtual |
Retrieves the current cooling level of the cooling device. This value can be between 0 and max cooling level. Max cooling level is different for different cooling devices like fan, processor etc.
|
strong |
|
strong |
Defines the type of trip points, it can be one of the values for ACPI (Advanced Configuration and Power Interface) thermal zone
const uint32_t telux::therm::DEFAULT_TIMEOUT = 30 |
Default time out (in seconds) for thermal auto-shutdown service to re-enable thermal auto-shutdown.