Graphisoft®

GSRootVersion: 1.0

OProtocol::Write

출력 채널로 심플 C++ 타입 (그리고 Object)를 분해합니다.

virtual GSErrCode Write (
    OChannel &          output,
    char                c
) = 0;
virtual GSErrCode Write (
    OChannel &          output,
    unsigned char       c
) = 0;
virtual GSErrCode Write (
    OChannel &          output,
    bool                b
) = 0;
virtual GSErrCode Write (
    OChannel &          output,
    short               s
) = 0;
virtual GSErrCode Write (
    OChannel &          output,
    unsigned short      s
) = 0;
virtual GSErrCode Write (
    OChannel &          output,
    int                 i
) = 0;
virtual GSErrCode Write (
    OChannel &          output,
    unsigned int        i
) = 0;
virtual GSErrCode Write (
    OChannel &          output,
    long                l
) = 0;
virtual GSErrCode Write (
    OChannel &          output,
    unsigned long       l
) = 0;
virtual GSErrCode Write (
    OChannel &          output,
    float               f
) = 0;
virtual GSErrCode Write (
    OChannel &          output,
    double              d
) = 0;
virtual GSErrCode Write (
    OChannel &          output,
    long double         d
) = 0;
virtual GSErrCode Write (
    OChannel &          output,
    const void *        p
) = 0;
virtual GSErrCode Write (
    OChannel &          output,
    const char *        cStr
) = 0;
virtual GSErrCode Write (
    OChannel &          output,
    const Object &      obj
) = 0;

파라미터

output
바이너리 데이터를 수신하는 출력 채널입니다. (보통 OChannel::WriteBin 메소드를 이용함)
c
분해할 character 값입니다.
b
분해할 boolean 값입니다.
s
분해할 short integer 값입니다.
i
분해할 integer 값입니다.
l
분해할 long integer 값입니다.
f
분해할 float 값입니다.
d
분해할 double 값입니다.
p
분해할 포인터입니다. (디버깅 목적 전용)
cStr
분해할 C 문자열입니다.
obj
분해할 Object입니다.

리턴 값

의미
NoError* OK
OutputIsFull* 출력 디바이스가 가득 차 있습니다.
WriteError* 출력 디바이스 상에서 쓰기 오류가 발생했습니다.
Error* 불특정 오류입니다.

* OChannel 클래스 범위 안에 선언됨
* GS 네임스페이스 안에 선언됨, 그러나 글로벌 범위에서 접근 가능함

설명

이 메소드는 지정한 출력 채널의 바이너리 레벨을 이용하여 심플 C++ 타입 (그리고 Object)를 분해합니다.