// PLPSESS.INL
//
// Copyright (c) 1997-1999 Symbian Ltd.  All rights reserved.
//

inline TRemoteLinkStatus::TRemoteLinkStatus()
    { iStatus=EDisabled; iRemoteVersion=0; }

inline TInt CPlpSocketHandler::State() const
    { return iState; }

inline void CPlpSocketHandler::SetState(TInt aState)
    { iState = aState; }

inline RSocketServ& CPlpSocketHandler::SocketServ() const
    { return (RSocketServ&)iSS; }

inline TBool CPlpSocketHandler::IsSocketValid() const
    { return iSocket ? 1 : 0; }

inline TPlpSockInfo::TPlpSockInfo(TUint aAddrFamily, TUint aSockType, TUint aProtocol)
    { iAddrFamily=aAddrFamily; iSockType=aSockType; iProtocol=aProtocol; }

inline TPlpSockInfo::TPlpSockInfo()
    {}

inline TBool CPlpIo::IsWriting() const
    { return iWriter->IsActive(); }

inline TBool CPlpIo::IsReading() const
    { return IsActive(); }

inline TPlpTimerEntry::TPlpTimerEntry()
    { iTimer=0; }

inline TBool TPlpTimerEntry::IsQued() const
    { return iTimer != 0; }

inline void TPlpTimerEntry::Reset()
    { iTimer = 0; }

inline void TPlpTimerEntry::Deque()
    { iTimer->Remove(*this); iTimer=0; }

inline void TPlpTimerEntry::Enque(CDeltaTimer &aTimer, TTimeIntervalMicroSeconds32 aTimeInMicroSeconds)
    { iTimer = &aTimer; iTimer->Queue(aTimeInMicroSeconds, *this); }

// Client classes inlines
inline void CPlpClient::Write(TDes8 *aPdu)
    { iIO->Write(aPdu); }

inline TBool CPlpClient::IsWriting() const
    { return iIO->IsWriting(); }

inline MPlpClientManager& CPlpClient::Manager() const
    { return *iManager; }

inline TPlpClientInfo& CPlpClient::Info() const
    { return *iInfo; }

// Server classes inlines
inline TInt CPlpServer::SessionCount() const
    { return iSessionCount; }

inline RLibrary& CPlpServer::Library() const
    { return (RLibrary&)iLib; }

inline MPlpServerManager& CPlpServer::Manager() const
    { return *iManager; }

inline void CPlpServer::SetLib(const RLibrary &aLib)
    { iLib = aLib; }

inline void CPlpServer::DeferredDelete()
    { iDeleter->Call(); }

inline TPlpServInfo& CPlpServer::Info() const
    { return *iInfo; }

inline CPlpServer& CPlpSession::Server() const
    { return *iServer; }

inline void CPlpSession::Write(TDes8 *aPdu)
    { iIO->Write(aPdu); }

inline TBool CPlpSession::IsWriting() const
    { return iIO->IsWriting(); }

inline void CPlpSession::Cancel()
    { if(iIO) iIO->Cancel(); }

