// D32RCHG.H
//
// Copyright (c) 1996-1999 Symbian Ltd.  All rights reserved.
//

#if !defined(__D32RCHG_H__)
#define __D32RCHG_H__
#if !defined(__E32STD_H__)
#include <e32std.h>
#endif

enum TChargeType
	{
	EChargeNone,
	EChargeFast,
	EChargeTrickle
	};
//

class TChargeInfoV1
    {
public:
    TUint iRawTemperature;
    TUint iTemperatureTicks;
    TUint iSmoothedTemperature;
    TUint iPreviousTemperature;
    TUint iVoltage;
    TUint iReferenceVoltage;
    TChargeType iChargeType;
    TBool iBatteryPack;
    };

typedef TPckgBuf<TChargeInfoV1> TChargeInfoV1Buf;

//
class RDevRecharger : public RLogicalChannel
	{
public:
	enum TRequest
		{
		ERequestDummy
		};
	enum TControl
		{
		EGetChargeType,
		ESetChargeType,
		EGetChargeInfo
		};
public:
	inline TInt Open(TInt aUnit=KNullUnit);
	inline TInt ChargeType(TInt& aChargeType);
	inline TInt SetChargeType(TInt aChargeType);
	inline TInt ChargeInfo(TDes8& aChargeInfo);
	};
//
#include <d32rchg.inl>
#endif

