AudioScience HPI Version_4.24.1
|
The Status block is used for reporting adapter status information. More...
The Status block is used for reporting adapter status information.
The Status block is an implementation of a universal control (see Universal Control).
The list of supported datatypes is as follows:
ASCII character.
Sequence of potentially heterogeneous entities.
Conceptually similar to C struct.
A 32 bit integer.
An ieee754 binary 32 bit float.
Status |
Adapter status block parameters report status information |
CPU Utilization |
A measure of how busy the processor is |
Temperature |
The adapter's temperature |
Power Source |
The adapter's power source |
Name | Status |
Description | Adapter status block parameters report status information. The Temperature and Power Source Parameters are optional. |
Optional | No |
Type | sequence / entity_type_sequence / a sequence of parameters follow |
Count | 3 |
Attributes | read |
Added in version | 4.10.00 |
Example | static void print_block_control( hpi_hsubsys_t *hSubSys, hpi_handle_t hMixer, hpi_handle_t hControl ) { enum e_entity_role r; hpi_err_t err; char name[256]; size_t size, items; int count; err = HPI_Object_GetRole(hControl, &r); if (err) HandleError(err); // name size = sizeof(name); err = HPI_Object_GetInfo( hControl, entity_type_cstring, entity_role_classname, name, &size, &items); if (err) HandleError(err); printf(" %s", name); // count size = sizeof(count); err = HPI_Object_GetInfo( hControl, entity_type_int, entity_role_value, &count, &size, &items); if (err) HandleError(err); printf(", count %d", count); // fetch parameter handles if ( r == entity_role_block ) { hpi_handle_t params[16]; /* should really use count */ int i; size_t number; printf(" ["); number = sizeof(params)/sizeof(hpi_handle_t); err = HPI_Object_BlockParameters( hMixer, hControl, params, &number); if (err) HandleError(err); for ( i=0 ; i<number ; i++ ) { if (i > 0) printf(", "); printf("%d",params[i]); } printf("]"); } } |
Name | CPU Utilization |
Description | A measure of how busy the processor is. |
Optional | No |
Type | integer / entity_type_int / C99 type int32_t |
Count | 1 |
Attributes | read volatile value |
Added in version | 4.10.00 |
Example | struct hpi_control_t asihpi_control; hpi_handle_t block; hpi_handle_t param; size_t value_size; size_t value_items; int CPU_Utilization; /* set source and destination node */ asihpi_control.wSrcNodeType = HPI_SOURCENODE_ADAPTER; asihpi_control.wSrcNodeIndex = 0; asihpi_control.wDstNodeType = 0; asihpi_control.wDstNodeIndex = 0; err = HPI_Object_BlockHandle(hMixer, asihpi_control.wSrcNodeType, asihpi_control.wSrcNodeIndex, asihpi_control.wDstNodeType, asihpi_control.wDstNodeIndex, "Status", &block ); err = HPI_Object_ParameterHandle( hMixer, block, "CPU Utilization", ¶m); if (!err) { err = HPI_Object_GetInfo( param, entity_type_int, entity_role_value, NULL, &value_size, &value_items); } err = HPI_Object_GetValue(param, entity_type_int, 1, &CPU_Utilization, sizeof(CPU_Utilization) ); |
Units | % |
Name | Temperature |
Description | The adapter's temperature. This parameter is optional. |
Optional | Yes |
Type | float / entity_type_float / IEEE745 32 bit float |
Count | 1 |
Attributes | read volatile value |
Added in version | 4.10.00 |
Example | struct hpi_control_t asihpi_control; hpi_handle_t block; hpi_handle_t param; size_t value_size; size_t value_items; float Temperature; /* set source and destination node */ asihpi_control.wSrcNodeType = HPI_SOURCENODE_ADAPTER; asihpi_control.wSrcNodeIndex = 0; asihpi_control.wDstNodeType = 0; asihpi_control.wDstNodeIndex = 0; err = HPI_Object_BlockHandle(hMixer, asihpi_control.wSrcNodeType, asihpi_control.wSrcNodeIndex, asihpi_control.wDstNodeType, asihpi_control.wDstNodeIndex, "Status", &block ); err = HPI_Object_ParameterHandle( hMixer, block, "Temperature", ¶m); if (!err) { err = HPI_Object_GetInfo( param, entity_type_float, entity_role_value, NULL, &value_size, &value_items); } err = HPI_Object_GetValue(param, entity_type_float, 1, &Temperature, sizeof(Temperature) ); |
Units | degrees C |
Name | Power Source |
Description | The adapter's power source. This parameter is optional. Valid enumeration strings are
|
Optional | Yes |
Type | enumerated / #entity_type_enumerated_strings / contains string enumerations |
Count | 1 |
Attributes | read volatile value |
Added in version | 4.10.00 |
Example | struct hpi_control_t asihpi_control; hpi_handle_t block; hpi_handle_t param; size_t value_size; size_t value_items; uint32_t Power_Source; /* set source and destination node */ asihpi_control.wSrcNodeType = HPI_SOURCENODE_ADAPTER; asihpi_control.wSrcNodeIndex = 0; asihpi_control.wDstNodeType = 0; asihpi_control.wDstNodeIndex = 0; err = HPI_Object_BlockHandle(hMixer, asihpi_control.wSrcNodeType, asihpi_control.wSrcNodeIndex, asihpi_control.wDstNodeType, asihpi_control.wDstNodeIndex, "Status", &block ); err = HPI_Object_ParameterHandle( hMixer, block, "Power Source", ¶m); if (!err) { err = HPI_Object_GetInfo( param, entity_type_int, entity_role_value, NULL, &value_size, &value_items); } Power_Source = 1; /* TODO */ /* TODO */ /* TODO */ /* TODO */ err = HPI_Object_GetValue(param, entity_type_int, 1, &Power_Source, sizeof(Power_Source)); |