Graphisoft®

API Development KitVersion: 18

ACAPI_GetPreferences

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

    GSErrCode  ACAPI_GetPreferences (
        Int32*      version,
        GSSize*     nByte,
        void*       data
    );

 

파라미터

version
[out] 리턴시 저장된 preferences의 버전을 포함하고 있습니다. 또는 preferences를 찾지 못하면 0이 들어 있습니다.
nByte
[out] 리턴시 저장된 preferences의 크기(바이트)를 포함하고 있습니다. 또는 preferences를 찾지 못하면 0이 들어 있습니다.
data
[in/out] 리턴시 저장된 preferences를 포함하고 있습니다. 이 파라미터는 NULL이 될 수 있습니다.

 

리턴 값

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

 

설명

(1) 당신의 애드온의 저장된 preferences를 가져올 수 있습니다. 이 정보는 예전에 DoCommand 함수의 파라미터로 애드온에게 전달되었습니다.

(2) 마지막 파라미터를 NULL로 설정하는 것은 API가 preferences 데이터의 버전과 크기만 리턴하게 된다는 것을 의미합니다. 만약 크기나 버전 번호가 0이면, 저장된 preferences가 없는 것입니다.

(3) 버전 정보는 예전 preferences를 현재 포맷으로 변환하는 데 사용할 수 있습니다.

6.1  preferences 데이터의 플랫폼 식별자를 가져오기 위해 ArchiCAD에서 ACAPI_GetPreferences 대신 ACAPI_GetPreferences_Platform을 사용하십시오.

 

예제

Int32       version;
GSSize      nBytes;
GSPtr       pref;

ACAPI_GetPreferences (&version, &nBytes, NULL);             // (2) 버전 및 크기를 가져옴
if (version == MY_PREFERENCES_VERSION) {                    // (3) 버전 확인
    pref = BMAllocatePtr (nBytes, ALLOCATE_CLEAR, 0);       // preferences에 대한 메모리 할당
    if (pref != NULL) {
        ACAPI_GetPreferences (&version, &nBytes, pref);     // 실제 preferences를 가져옴
        // preferences 데이터와 함께 무엇인가를 수행함

        BMKillPtr (&pref);                                  // 할당된 포인터 폐기하기
    }
}

 

요구사항

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

 

참고사항

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