Graphisoft®

API Development KitVersion: 18

ACAPI_LibPart_Search

로드된 라이브러리에서 등록된 라이브러리 파트를 검색합니다.

    GSErrCode  ACAPI_LibPart_Search (
        API_LibPart*     ancestor,
        bool             createIfMissing,
        bool             onlyPlaceable = false
    );

 

파라미터

ancestor
[in/out] 검색하고자 하는 라이브러리 파트
createIfMissing
[in] 레퍼런스가 누락된 경우 레퍼런스를 만들기 위해 true로 세트하세요.
onlyPlaceable Featuring API 15
[in] 검색은 배치 가능한 라이브러리 파트에만 국한됩니다. 옵션 파라미터를 생략할 수 있습니다.

 

리턴 값

NoError
함수가 성공적으로 완료되었습니다. 라이브러리 파트를 발견했습니다. (또는 createIfMissingtrue이면 레퍼런스가 성공적으로 만들어졌습니다)
APIERR_MISSINGDEF
원본 라이브러리 파트 파일이 없습니다. 문서 이름이 아직 채워져 있습니다.
APIERR_BADPARS
ancestorNULL입니다.
APIERR_BADID
지정된 ownUnID, parentUnID 또는 typeID 파라미터들에 따라 라이브러리 파트를 찾을 수 없습니다.
APIERR_BADNAME
지정된 문서 또는 파일 이름을 가진 라이브러리 파트를 찾을 수 없습니다.
APIERR_MEMFULL
레퍼런스를 생성할 수 없습니다; createIfMissingtrue일 때만

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

 

설명

이 함수는 로드된 라이브러리에서 라이브러리 파트를 검색할 때 사용합니다.

라이브러리 파트는 다음 기준에 따라 참조될 수 있습니다:

이 문서의 라이브러리 파트 서브타입 장에서 설명한 대로 라이브러리 파트는 서브타입 계층에 따라 분류된다는 것을 기억하십시오. 확장 가능한 서브타입 시스템은 라이브러리 파트의 typeID 기반 구분을 쓸모없게 만들었지만, 내부 조상 노드에 대해 parentUnID 대신 서브타입 별로 검색하기 위해 이 필드를 사용할 수 있습니다. (이 경우 APILib_ObjectID는 Model Elements에 해당하며, API_ZombieLibID는 General Object 서브타입을 표시합니다)

ACAPI_LibPart_Search는 또한 기존에 존재하지 않는 라이브러리 파트(즉, 참조될 수 있는 인덱스)에 대한 가상 참조를 만들 수 있습니다. (만약 라이브러리 파트가 활성 라이브러리에서 발견되지 않고 createIfMissingtrue로 세트되어 있을 경우) 열린 평면도가 활성 라이브러리에 없는 라이브러리 파트를 가리킬 때 동일한 효과가 나타납니다. 이 경우 ArchiCAD는 누락된 라이브러리 파트가 참조되는 도면에 채워진 원을 배치합니다.

성공 시 ACAPI_LibPart_SearchAPI_LibPart structure의 모든 필드를 채우므로 더 이상 필요하지 않으면 함수에 의해 할당된 location 포인터를 해제해야 합니다.

 

예제

ACAPI_LibPart_Create 함수의 예제를 보십시오.

 

요구사항

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

 

참고사항

API_LibPart
ACAPI_LibPart_Get, ACAPI_LibPart_Create
라이브러리 파트 관리자, 라이브러리 파트 서브 타입
API 함수