7#include "DeviceSocketDefinitions.h"
551 DeclareGetClassType();
555 virtual bool CheckDeviceLibraries()
const override;
557 virtual void SetInitialized(
bool bSet);
561 virtual void SendOnConnecting();
562 virtual void SendOnConnected();
563 virtual void SendOnDisconnecting();
564 virtual void SendOnDisconnected();
576 volatile bool m_bInitialized;
577 volatile int64_t m_i64Socket;
578 volatile bool m_bTrouble;
579 int32_t m_i32BlockSize;
586 SOCKADDR_IN m_sockAddr;
588 static WSADATA m_wsaData;
589 volatile int64_t* m_pI64WsaInitCount;
591 void* m_pI64CumulativeSentBytes;
592 void* m_pI64CumulativeRecvBytes;
596 friend class CDeviceSocketClientManager;
597 friend class CDeviceSocketClientASCIIManager;
598 friend class CDeviceSocketServerASCII;
599 friend class CDeviceSocketClientASCII;
데이터 클래스
Definition FLData.h:30
Template type 의 문자열 클래스
Definition FLString.h:34
RSA 암호 클래스
Definition RSACryptography.h:30
FLImaging 모듈의 수행 결과 객체
Definition ResultsDef.h:1596
CDeviceSocketBase * GetParent() const
부모(서버) 소켓의 포인터를 얻어 옵니다.
virtual bool IsBlockTransferMode() const
전송 모드가 블록 전송 모드인지 확인합니다.
int64_t GetCumulativeRecvBytes() const
누적 수신 바이트를 얻어 옵니다.
const CResult GetPrivateKey(Base::CFLData &fldModulus, Base::CFLData &fldPublicExponent, Base::CFLData &fldPrivateExponent) const
비밀 키를 얻어 옵니다.
virtual const CResult SetConnectionIPAddress(const char *pU8Address, uint16_t u16Port)
연결할 IP 주소를 설정합니다.
const SOCKADDR_IN * GetSockAddrIn() const
소켓 주소를 SOCKADDR_IN* 형태로 얻어 옵니다.
virtual bool IsLoggingComm() const
통신 로그 출력 여부를 얻어 옵니다.
virtual ESocketMode GetSocketMode()
소켓 모드를 반환합니다.
const CResult AddSentBytes(int64_t i64SentBytes)
송신한 바이트 값을 누적 송신 바이트에 추가 합니다.
virtual bool IsPassiveMode() const
연결이 수동 모드인지 확인합니다.
const CResult ResetCumulativeRecvBytes()
누적 수신 바이트를 초기화 합니다.
CDeviceSocketBase()
기본 생성자
virtual int64_t GetSocket() const
int64_t 타입으로 소켓을 얻어 옵니다.
virtual bool IsFLProtocol() const
프로토콜이 FLProtocol인지 확인합니다.
virtual bool IsLogging() const
로그 출력 여부를 얻어 옵니다.
virtual void SetLogging(bool bLogging)
로그 출력 여부를 설정합니다.
const CResult SetPublicKey(const Base::CFLData &fldModulus, const Base::CFLData &fldPublicExponent)
공개 키를 설정합니다.
virtual const CResult Terminate()
소켓 종료를 수행합니다.
int64_t GetCumulativeSentBytes() const
누적 송신 바이트를 얻어 옵니다.
const CResult ResetCumulativeSentBytes()
누적 송신 바이트를 초기화 합니다.
const Base::CFLString< char > & GetDNS() const
SetConnectionDNSAddress 함수로 설정된 DNS를 얻어옵니다.
const CResult AddRecvBytes(int64_t i64RecvBytes)
수신한 바이트 값을 누적 수신 바이트에 추가 합니다.
virtual ~CDeviceSocketBase()
기본 소멸자
virtual const CResult SetConnectionDNSAddress(const char *pDNSAddress, uint16_t u16Port)
연결할 DNS 주소를 설정합니다.
virtual int32_t GetBlockSize() const
데이터 전송을 위한 현재 블록 크기를 가져옵니다.
const CResult GetIPAddress(uint8_t arrU8IPAddr[4]) const
IP 주소를 얻어 옵니다.
virtual CDeviceSocketPacketDistinguisher * GetSocketPacketDistinguisher() const
CDeviceSocketPacketDistinguisher 객체를 얻어 옵니다.
virtual const CResult SetSocketMode(ESocketMode eSocketMode=ESocketMode_FLProtocol_Passive_Plain)
소켓 모드를 설정 합니다.
virtual void SetLoggingComm(bool bLoggingComm)
통신 로그 출력 여부를 설정합니다.
virtual const CResult SetBlockSize(int32_t i32BlockSize)
데이터 전송을 위한 블록 크기를 설정합니다.
virtual bool IsInitialized() const
소켓 초기화 여부를 얻어 옵니다.
virtual const CResult AssignSocketPacketDistinguisher(CDeviceSocketPacketDistinguisher *pSocketPacketDistinguisher)
CDeviceSocketPacketDistinguisher 를 설정합니다.
const CResult SetPrivateKey(const Base::CFLData &fldModulus, const Base::CFLData &fldPublicExponent, const Base::CFLData &fldPrivateExponent)
비밀 키를 설정합니다.
const CResult GetPublicKey(Base::CFLData &fldModulus, Base::CFLData &fldPublicExponent) const
공개 키를 얻어 옵니다.
uint16_t GetPort() const
현재 사용 중인 포트 번호를 가져옵니다.
virtual void ClearSocketPacketDistinguisher()
CDeviceSocketPacketDistinguisher 객체를 제거합니다.
const CResult CreateKeyPair(uint32_t u32Bits)
보안에 사용될 Key 쌍을 생성합니다.
virtual const CResult Initialize()
소켓 초기화를 수행합니다. 소켓 모드 설정 및 연결 정보 설정을 먼저 수행해야 합니다.
virtual bool IsSecured() const
보안 전송 여부를 얻어 옵니다.
패킷을 구분하여 해당 패킷에 등록한 프로시저를 실행시키도록 하는 클래스
Definition DeviceSocketPacketDistinguisher.h:26
소켓 패킷 클래스
Definition DeviceSocketPacket.h:18
소켓 서버 클래스
Definition DeviceSocketServer.h:25
Definition AutoFileCleaner.h:17
ESocketMode
통신에 사용되는 소켓 모드의 정의
Definition DefinitionsDevices.h:29
@ ESocketMode_FLProtocol_Passive_Plain
FLProtocol Passive mode with Plain communication
Definition DefinitionsDevices.h:33