QBatteryInfo::ChargingState QBatteryInfoPrivate::chargingState(int battery) { if (!watchChargingState) return getChargingState(battery); return chargingStates.value(battery); }
AXC_Charging_FSM *getChargingFSM(AXE_Charging_FSM_Type type,AXI_Charging_FSM_Callback* callback) { AXC_Charging_FSM *lpFSM = NULL; switch(type) { case E_ASUS_A66_FSM_CHARGING_TYPE: { static AXC_Charging_FSM *lpA66FSM = NULL; if(NULL == lpA66FSM) { AXE_Charging_State index; lpA66FSM = &A66_Charging_FSM; A66_Charging_FSM_constructor(lpA66FSM,callback); for(index = DISCHARGING_STATE; index <CHARGING_STATE_COUNT; index++) { AXI_Charging_State *lpState = NULL; lpState = getChargingState(index); BUG_ON(NULL == lpState); lpA66FSM->statePointerList[index]=lpState; lpA66FSM->statePointerList[index]->setContext(lpA66FSM->statePointerList[index], &lpA66FSM->miContext); } } lpFSM = lpA66FSM; } break; default: break; } return lpFSM; }
//----------------------------------------------------------------------------- void CCBPowerPack::print() { tChargeState state; state = getChargingState(); printf ( "Power: %02.2fV, %02.3fA, bat %02.3fAh, maxBat %02.3fAh, %02.1f ", mVoltage, mCurrent, mBatteryCapacity, mMaxBatteryCapacity, mBatteryTemperature ); switch ( state ) { case NOT_CHARGING: printf ( "not charging " ); break; case RECONDITIONING: printf ( "reconditioning " ); break; case FULL_CHARGING: printf ( "full charging " ); break; case TRICKLE_CHARGING: printf ( "trickel charging " ); break; case WAITING: printf ( "waiting " ); break; case CHARGING_FAULT: printf ( "charging fault " ); break; }; if ( getChargingSource() == 0 ) printf ( "No Charger\n" ); if ( getChargingSource() == 1 ) printf ( "Internal Charger\n" ); if ( getChargingSource() == 2 ) printf ( "Home Base\n" ); }