//-------------------------------------------------------------------------------------------------- void pa_gnssSimu_ReportEvent ( void ) { // Build the data for the user's event handler. pa_Gnss_Position_t* posDataPtr = le_mem_ForceAlloc(PositionEventDataPool); memcpy(posDataPtr, &GnssPositionData, sizeof(pa_Gnss_Position_t)); le_event_ReportWithRefCounting(GnssEventId, posDataPtr); char* strDataPtr = le_mem_ForceAlloc(NmeaEventDataPool); strncpy(strDataPtr, "nmea", NMEA_STR_LEN); le_event_ReportWithRefCounting(NmeaEventId, strDataPtr); }
//-------------------------------------------------------------------------------------------------- static void CGEVUnsolHandler ( void* reportPtr ) { atmgr_UnsolResponse_t* unsolPtr = reportPtr; uint32_t numParam=0; pa_mdc_SessionStateData_t *sessionStatePtr=NULL; LE_DEBUG("Handler received -%s-",unsolPtr->line); if ( ( FIND_STRING("+CGEV: NW DEACT", unsolPtr->line) ) || ( FIND_STRING("+CGEV: ME DEACT", unsolPtr->line) ) ) { numParam = atcmd_CountLineParameter(unsolPtr->line); if (numParam == 4) { sessionStatePtr = le_mem_ForceAlloc(NewSessionStatePool); sessionStatePtr->profileIndex = atoi(atcmd_GetLineParameter(unsolPtr->line,4)); sessionStatePtr->newState = LE_MDC_DISCONNECTED; SetCurrentDataSessionIndex(INVALID_PROFILE_INDEX); LE_DEBUG("Send Event for %d with state %d", sessionStatePtr->profileIndex,sessionStatePtr->newState); le_event_ReportWithRefCounting(NewSessionStateEvent,sessionStatePtr); } else { LE_WARN("this Response pattern is not expected -%s-",unsolPtr->line); } } }
//-------------------------------------------------------------------------------------------------- static void VoltageChangeHandler ( le_ips_ThresholdStatus_t* thresholdEventPtr ) { // Notify all the registered client's handlers le_event_ReportWithRefCounting(VoltageThresholdEventId, thresholdEventPtr); }
//-------------------------------------------------------------------------------------------------- static void TemperatureChangeHandler ( le_temp_ThresholdStatus_t* thresholdEventPtr ) { // Notify all the registered client's handlers le_event_ReportWithRefCounting(TemperatureThresholdEventId, thresholdEventPtr); }
//-------------------------------------------------------------------------------------------------- static void NewRegStateHandler ( le_mrc_NetRegState_t* regStatePtr ) { LE_DEBUG("Handler Function called with regStat %d", *regStatePtr); // Notify all the registered client's handlers le_event_ReportWithRefCounting(NewNetRegStateId, regStatePtr); }
//-------------------------------------------------------------------------------------------------- static void ReportStatus ( uint32_t simCard, ///< [IN] Sim Card Number le_sim_States_t simState ///< [IN] Sim Card Status ) { pa_sim_Event_t* eventPtr = le_mem_ForceAlloc(SimEventPoolRef); eventPtr->num = simCard; eventPtr->state = simState; LE_DEBUG("Send Event SIM number %d, SIM state %d",eventPtr->num,eventPtr->state); le_event_ReportWithRefCounting(EventNewSimStateId,eventPtr); }
//-------------------------------------------------------------------------------------------------- void pa_lptSimu_ReportEDrxParamsChange ( le_lpt_EDrxRat_t rat, ///< [IN] Radio Access Technology. le_onoff_t activation, ///< [IN] eDRX activation state. uint8_t eDrxValue, ///< [IN] eDRX cycle value, defined in 3GPP ///< TS 24.008 Rel-13 section 10.5.5.32. uint8_t pagingTimeWindow ///< [IN] Paging Time Window, defined in 3GPP ///< TS 24.008 Rel-13 section 10.5.5.32. ) { pa_lpt_EDrxParamsIndication_t* eDrxParamsChangeIndPtr; eDrxParamsChangeIndPtr = le_mem_ForceAlloc(EDrxParamsChangeIndPool); eDrxParamsChangeIndPtr->rat = rat; eDrxParamsChangeIndPtr->activation = activation; eDrxParamsChangeIndPtr->eDrxValue = eDrxValue; eDrxParamsChangeIndPtr->pagingTimeWindow = pagingTimeWindow; le_event_ReportWithRefCounting(EDrxParamsChangeEventId, eDrxParamsChangeIndPtr); }
//-------------------------------------------------------------------------------------------------- static void CREGUnsolHandler(void* reportPtr) { atmgr_UnsolResponse_t* unsolPtr = reportPtr; uint32_t numParam=0; le_mrc_NetRegState_t *statePtr; LE_DEBUG("Handler received -%s-",unsolPtr->line); numParam = atcmd_CountLineParameter(unsolPtr->line); if ( ThisMode == PA_MRC_ENABLE_REG_NOTIFICATION ) { if (numParam == 2) { statePtr = le_mem_ForceAlloc(RegStatePoolRef); switch(atoi(atcmd_GetLineParameter(unsolPtr->line,2))) { case 0: *statePtr = LE_MRC_REG_NONE; break; case 1: *statePtr = LE_MRC_REG_HOME; break; case 2: *statePtr = LE_MRC_REG_SEARCHING; break; case 3: *statePtr = LE_MRC_REG_DENIED; break; case 4: *statePtr = LE_MRC_REG_UNKNOWN; break; case 5: *statePtr = LE_MRC_REG_ROAMING; break; default: *statePtr = LE_MRC_REG_UNKNOWN; break; } LE_DEBUG("Send Event with state %d",*statePtr); le_event_ReportWithRefCounting(EventNewRcStatusId,statePtr); } else { LE_WARN("this Response pattern is not expected -%s-",unsolPtr->line); } } else if (ThisMode == PA_MRC_ENABLE_REG_LOC_NOTIFICATION) { if (numParam == 5) { statePtr = le_mem_ForceAlloc(RegStatePoolRef); switch(atoi(atcmd_GetLineParameter(unsolPtr->line,2))) { case 0: *statePtr = LE_MRC_REG_NONE; break; case 1: *statePtr = LE_MRC_REG_HOME; break; case 2: *statePtr = LE_MRC_REG_SEARCHING; break; case 3: *statePtr = LE_MRC_REG_DENIED; break; case 4: *statePtr = LE_MRC_REG_UNKNOWN; break; case 5: *statePtr = LE_MRC_REG_ROAMING; break; default: *statePtr = LE_MRC_REG_UNKNOWN; break; } LE_DEBUG("Send Event with state %d",*statePtr); le_event_ReportWithRefCounting(EventNewRcStatusId,statePtr); } else { LE_WARN("this Response pattern is not expected -%s-",unsolPtr->line); } } }