더북(TheBook)

PIDL 파일로 컴파일하면 송신을 담당하는 코드, 즉 Proxy와 수신을 담당하는 코드인 Stub이 만들어집니다. 각각 클래스 형태입니다.

global CalcC2S 1000
{
  RequestAdd([in] int a, [in] int b);
}
 
global CalcS2C 2000
{
  ResponseAdd([in] int sum);
}

이 PIDL 파일을 컴파일할 때 PIDL 컴파일러가 생성하는 클래스는 다음과 같습니다.

// 클라이언트 → 서버 보내는 측
CalcC2S::Proxy
// 클라이언트 → 서버 받는 측
CalcC2S::Stub
CalcC2S::StubFunctional
 
// 서버 → 클라이언트 보내는 측
CalcS2C::Proxy
// 서버 → 클라이언트 받는 측
CalcS2C::Stub
CalcS2C::StubFunctional

앞서 global 구문 안에 네임스페이스를 입력했죠? 이것이 생성된 Proxy와 Stub 클래스의 네임스페이스가 됩니다. C++에서는 Stub 클래스가 두 종류 나옵니다. 편한 것을 쓰면 됩니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.