# adiQueryEnergy

Queries the current value in the energy detector.

#### Supported board type

- CG

#### Prototype

DWORD adiQueryEnergy ( CTAHD ctahd)

Argument | Description
ctahd | Context handle returned by ctaCreateContext or ctaAttachContext.

#### Return values

Return value | Description
SUCCESS |
CTAERR_FUNCTION_NOT_ACTIVE | adiStartEnergyDetector was not called.
CTAERR_INVALID_STATE | Function not valid in the current port state.
CTAERR_SVR_COMM | Server communication error.

#### Events

Event | Description
ADIEVN_QUERY_ENERGY_DONE | After the ADI service queries the board for the current energy level, the ADI service generates an event with the size field containing the current energy in dbm0.

#### Details

Use adiQueryEnergy to query the silence/energy signaling detector for the current energy value.

The energy detector reports a moving average of the energy over approximately the last 30 milliseconds. The energy is reported in dBm0 units, with a range of -72 to -7.

Note: This function can be called only if you started detection either by using adiStartEnergyDetector or by starting recording with silence detection enabled.

#### Example

int myQueryEnergy( CTAHD ctahd )
{
CTA_EVENT event;
if( adiQueryEnergy( ctahd ) != SUCCESS )
{
return MYFAILURE;
}
while( 1 )
{
myGetEvent( ctahd, &event ); /* see ctaWaitEvent example */
switch( event.id )
{
case ADIEVN_QUERY_ENERGY_DONE:
printf( "Current energy = %d dbm0\n", event.size);
break;
/* ... */
}
}
}