Files
Work/rasapi/CONNSTAT.HPP
2024-08-07 09:16:27 -04:00

130 lines
3.3 KiB
C++

#ifndef _RASAPI_RASCONNSTATUS_HPP_
#define _RASAPI_RASCONNSTATUS_HPP_
#ifndef _RASAPI_RASCONNECTIONSTATE_HPP_
#include <rasapi/cstate.hpp>
#endif
#ifndef _COMMON_STRING_HPP_
#include <common/string.hpp>
#endif
class RasConnectionStatus : private tagRASCONNSTATUSA
{
public:
RasConnectionStatus(void);
RasConnectionStatus(const RasConnectionStatus &someRasConnectionStatus);
RasConnectionStatus(const tagRASCONNSTATUSA &someRASCONNSTATUSA);
virtual ~RasConnectionStatus();
RasConnectionStatus &operator=(const RasConnectionStatus &someRasConnectionStatus);
RasConnectionStatus &operator=(const tagRASCONNSTATUSA &someRASCONNSTATUS);
WORD operator==(const RasConnectionStatus &someRasConnectionStatus)const;
RasConnectionState rasConnectionState(void)const;
void rasConnectionState(const RasConnectionState &someRasConnectionState);
DWORD error(void)const;
void error(DWORD error);
String deviceType(void)const;
void deviceType(String deviceType);
String deviceName(void)const;
void deviceName(String deviceName);
private:
void init(void);
};
inline
RasConnectionStatus::RasConnectionStatus(void)
{
init();
}
inline
RasConnectionStatus::RasConnectionStatus(const RasConnectionStatus &someRasConnectionStatus)
{
*this=someRasConnectionStatus;
}
inline
RasConnectionStatus::RasConnectionStatus(const tagRASCONNSTATUSA &someRASCONNSTATUSA)
{
*this=someRASCONNSTATUSA;
}
inline
RasConnectionStatus::~RasConnectionStatus()
{
}
inline
RasConnectionStatus &RasConnectionStatus::operator=(const RasConnectionStatus &someRasConnectionStatus)
{
init();
rasConnectionState(someRasConnectionStatus.rasConnectionState());
error(someRasConnectionStatus.error());
deviceType(someRasConnectionStatus.deviceType());
deviceName(someRasConnectionStatus.deviceName());
return *this;
}
inline
RasConnectionStatus &RasConnectionStatus::operator=(const tagRASCONNSTATUSA &someRASCONNSTATUS)
{
init();
rasConnectionState(RasConnectionState(someRASCONNSTATUS.rasconnstate));
error(someRASCONNSTATUS.dwError);
deviceType(someRASCONNSTATUS.szDeviceType);
deviceName(someRASCONNSTATUS.szDeviceName);
return *this;
}
inline
WORD RasConnectionStatus::operator==(const RasConnectionStatus &someRasConnectionStatus)const
{
return (rasConnectionState()==someRasConnectionStatus.rasConnectionState()&&
error()==someRasConnectionStatus.error()&&
deviceType()==someRasConnectionStatus.deviceType()&&
deviceName()==someRasConnectionStatus.deviceName());
}
inline
RasConnectionState RasConnectionStatus::rasConnectionState(void)const
{
return RasConnectionState(tagRASCONNSTATUSA::rasconnstate);
}
inline
void RasConnectionStatus::rasConnectionState(const RasConnectionState &someRasConnectionState)
{
tagRASCONNSTATUSA::rasconnstate=someRasConnectionState.connState();
}
inline
DWORD RasConnectionStatus::error(void)const
{
return tagRASCONNSTATUSA::dwError;
}
inline
void RasConnectionStatus::error(DWORD error)
{
tagRASCONNSTATUSA::dwError=error;
}
inline
String RasConnectionStatus::deviceType(void)const
{
return tagRASCONNSTATUSA::szDeviceType;
}
inline
String RasConnectionStatus::deviceName(void)const
{
return tagRASCONNSTATUSA::szDeviceName;
}
inline
void RasConnectionStatus::init(void)
{
::memset(&((tagRASCONNSTATUSA&)*this),0,sizeof(tagRASCONNSTATUSA));
tagRASCONNSTATUSA::dwSize=sizeof(tagRASCONNSTATUSA);
}
#endif