Graphisoft®

API Development KitVersion: 18

ACAPI_GetPreferences_Platform

애드온의 저장된 preferences를 리턴합니다.

    GSErrCode  ACAPI_GetPreferences_Platform (
        Int32*              version,
        GSSize*             nByte,
        void*               data,
        unsigned short*     platformSign
    );

 

파라미터

version
[out] 리턴시 저장된 preferences의 버전을 포함하고 있습니다. 또는 preferences를 찾지 못하면 0이 들어 있습니다.
nByte
[out] 리턴시 저장된 preferences의 크기(바이트)를 포함하고 있습니다. 또는 preferences를 찾지 못하면 0이 들어 있습니다.
data
[in/out] 리턴시 저장된 preferences를 포함하고 있습니다.
platformSign
[out] 리턴시 저장된 preferences의 플랫폼 식별자를 포함하고 있습니다.

 

리턴 값

다른 공통 API 오류들에 대해서는 API 오류 문서를 보십시오.

 

설명

preferences 또는 현재 열린 도면 파일에 저장된 preferences 데이터를 가져오기 위해 이 함수를 사용하십시오. preferences는 다른 플랫폼에서 도면에 저장될 수 있습니다; 이 경우 반대 바이트 순서로 저장된 데이터 structure들을 변환해야 할 책임이 당신에게 있습니다.

모든 파라미터들은 NULL이 될 수 있습니다.

data 포인터는 애드온에 의해 할당, 폐기되어야 합니다. 그러므로 먼저 preferences 데이터의 버전 번호와 크기만 가져오기 위해 당신은 이 함수를 호출해야 합니다.

 

예제

Int32           version = 0;
GSSize          nBytes = 0;
GSPtr           pref;
unsigned short  platformSign = GS::Act_Platform_Sign;

ACAPI_GetPreferences_Platform (&version, &nBytes, NULL, NULL);      // 버전 및 크기를 가져옴
if (version == MY_PREFERENCES_VERSION) {                            // 버전 확인
    pref = BMAllocatePtr (nBytes, ALLOCATE_CLEAR, 0);               // preferences에 대한 메모리 할당
    if (pref != NULL) {
        ACAPI_GetPreferences_Platform (&version, &nBytes, pref, &platformSign);     // 실제 preferences를 가져옴
        if (platformSign != GS::Act_Platform_Sign) {
            // 필수 바이트 교환(swap)
        }

        // preferences 데이터와 함께 무엇인가를 수행함
        BMKillPtr (&pref);                                          // 할당된 포인터 폐기하기
    }
}

 

참고사항

버전: API 6.1 또는 이후
헤더: ACAPinc.h

 

참고사항

애드온 데이터를 Preferences와 Project File에 저장하기
ACAPI_GetPreferences
ACAPI_SetPreferences
ACAPI_SetPreferences_OldVersion
API 함수