ACAPI_Element_ChangeDefaults
요소의 기본 파라미터들을 변경합니다.
GSErrCode ACAPI_Element_ChangeDefaults ( API_Element* element, API_ElementMemo* memo, const API_Element* mask );
파라미터
- element
- [in] 기본값들을 변경하고 싶은 일반 파라미터들을 포함하고 있습니다.
- memo
- [in] 기본값들을 변경하고 싶은 특수 파라미터들을 포함하고 있습니다.
- mask
- [in] 변경하고 싶은 파라미터들을 지정하는 마스크를 포함하고 있습니다. 메모 필드들은 유효한 데이터를 포함하고 있을 경우 항상 사용합니다.
리턴 값
NoError
- 함수가 성공적으로 완료되었습니다.
APIERR_BADPARS
- 전달된 파라미터가
NULL
입니다;element
APIERR_BADID
- 요소 타입이 유효하지 않습니다. 또는
요소 타입이 서버 애플리케이션에 의해 지원되지 않습니다. APIERR_REFUSEDCMD
- 요소 타입이 동작에 대하여 유효한 대상이 아닙니다;
API_SectElemID
APIERR_MEMFULL
- 동작을 완료하기에는 메모리가 충분하지 않습니다.
다른 공통 API 오류들에 대해서는 API 오류 문서를 보십시오.
설명
이 함수는 어떤 요소 타입에 대한 실제 기본값 설정들을 변경하는 데 사용합니다.
mask
의 해당 필드가 0이 아닌 파라미터들만 변경됩니다.
요청한 타입은 헤더의 typeID와 variationID 필드에 의해 식별됩니다.
API_WindowID
, API_DoorID
, API_ObjectID
, API_LampID
, API_RoomID
, API_LabelID
, API_PictureID
의 경우
memo
파라미터만 사용합니다.
라이브러리 파트 기반 요소들의 경우, 만약 memo
가 NULL
로 세트되어 있으면 원래 라이브러리 파트의 기본 파라미터들을 사용합니다.
그 외에는 memo
의 params
필드로부터 값들을 가져옵니다.
실제 기본 설정 값들을 가져오려면 ACAPI_Element_GetDefaults 함수를 사용하십시오.
변경하려고 표시된 요소 인수를 채우기 위해 다음 파라미터들만 사용하시면 됩니다. 마스크 값들을 올바르게 설정하기 위한 매크로들이 다음과 같이 있습니다:
|
마스크의 모든 flag들을 지웁니다. |
|
마스크의 모든 flag들을 세트합니다. |
|
하나의 요소 파라미터에 따라 마스크의 하나의 flag만 세트합니다. |
|
하나의 요소 파라미터에 대하여 마스크를 체크합니다. |
ACAPI_DisposeElemMemoHdls를 호출하여 전달된 핸들들을 폐기하는 것을 잊지 마십시오.
ACAPI_SetDefaults
함수는 더 이상 사용하지 않는다는 것을 참고 바랍니다; 그것은 API 1.3에서 사용했었습니다.
표시된 요소 타입들(API_WindowType, API_DoorType, API_CutPlaneType, API_ChangeMarkerType, API_DetailType, API_WorksheetType)의 기본 설정들을 변경하기 위해 ACAPI_Element_ChangeDefaultsExt 함수를 대신 사용하십시오.
예제
API_Element element, mask; GSErrCode err; BNZeroMemory (&element, sizeof (API_Element)); element.header.typeID = API_WallID; element.header.variationID = APIVarId_Generic; err = ACAPI_Element_GetDefaults (&element, NULL); if (err == NoError) { ACAPI_ELEMENT_MASK_CLEAR (mask); ACAPI_ELEMENT_MASK_SET (mask, API_Elem_Head, layer); element.header.layer = 27; err = ACAPI_Element_ChangeDefaults (&element, NULL, &mask); }
요구사항
- 버전: API 1.3 또는 이후
- 헤더: ACAPinc.h
참고사항
API_Element, API_ElementMemo
ACAPI_Element_GetDefaults, ACAPI_DisposeElemMemoHdls
ACAPI_Element_GetDefaultsExt, ACAPI_Element_ChangeDefaultsExt
요소 관리자, API 함수