Graphisoft®

API Development KitVersion: 18

CheckEnvironment

현재 실행 환경 기반의 애드온 행동을 정의합니다.

    API_AddonType  CheckEnvironment (
        API_EnvirParams*     envirParams
    );

 

파라미터

envirParams
[in/out] 환경 상의 정보를 포함합니다. 애드온은 또한 목적에 대한 텍스트 설명을 반환해야 합니다.

 

리턴 값

NoError
함수가 성공적으로 완료되었습니다.

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

 

설명

이것은 애드온의 메인 엔트리 포인트 중 하나입니다; 각 애드온은 이 함수을 구현해야 합니다. 애플리케이션이 구동하는 동안 Add-On Manager가 애드온들을 열거할 때 호출됩니다. 다른 애드온들로부터 모든 정보를 수집한 후, Add-On Manager는 의존성 검사를 수행한 다음 "좋은" 애드온들의 RegisterInterface 함수를 호출한다.

애드온은 실행 환경(서버 애플리케이션, 메인 및 서브-버전)을 확인하고, 주어진 조건에서 실행할 수 있는지 여부를 리턴할 수 있습니다. 예를 들어, 당신은 ArchiCAD 데모 버전에서 애드온을 비활성화하거나 특정 커맨드들을 활성화/비활성화할 수 있습니다.

이 함수는 또한 당신의 애드온의 특정 서비스들의 가용성에 대해 다른 애드온들에게 알리기 위한 장소입니다. (ACAPI_Register_SupportedService 참조) 또한 서버 애플리케이션에게 당신의 애드온이 다른 애드온들의 서비스들을 요구한다고 알려주는 장소이기도 합니다. (ACAPI_Register_RequiredService 참조)

 

예제

// -----------------------------------------------------------------------------
// 의존성 정의
// -----------------------------------------------------------------------------
API_AddonType    __ACDLL_CALL    CheckEnvironment (API_EnvirParams* envir)
{
    //
    // 필요한 정보를 채움
    //
    ACAPI_Resource_GetLocStr (envir->addOnInfo.name, 32000, 1);
    ACAPI_Resource_GetLocStr (envir->addOnInfo.description, 32000, 2);

    //
    // 커맨드 서비스들을 등록함
    //
    GSErrCode err = ACAPI_Register_SupportedService ('ABCD', 4L);
    if (err != NoError)
        return APIAddon_DontRegister;

    //
    // ArchiCAD에서만 실행하기 활성화
    //
    return (envir->serverInfo.serverApplication != APIAppl_ArchiCADID ? APIAddon_DontRegister : APIAddon_Normal);
}   // CheckEnvironment

 

요구사항

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

 

참고사항

API_EnvirParams,
ACAPI_Register_SupportedService, ACAPI_Register_RequiredService, RegisterInterface, API 함수