인스턴스

이 모듈에는 OpenThread 인스턴스를 제어하는 함수가 포함되어 있습니다.

요약

Typedef

otChangedFlags typedef
uint32_t
변경된 특정 상태/구성을 나타내는 비트 필드를 나타냅니다.
otInstance typedef
struct otInstance
OpenThread 인스턴스 구조를 나타냅니다.
otStateChangedCallback)(otChangedFlags aFlags, void *aContext) typedef
void(*
포인터는 OpenThread 내의 특정 구성 또는 상태 변경사항을 알리기 위해 호출됩니다.

함수

otGetRadioVersionString(otInstance *aInstance)
const char *
OpenThread 라디오 버전 문자열을 가져옵니다.
otGetVersionString(void)
const char *
OpenThread 버전 문자열을 가져옵니다.
otInstanceErasePersistentInfo(otInstance *aInstance)
비휘발성 메모리에 저장된 모든 OpenThread 영구 정보 (네트워크 설정)를 지웁니다.
otInstanceFactoryReset(otInstance *aInstance)
void
비휘발성 메모리에 저장된 모든 설정을 삭제한 다음 플랫폼 재설정을 트리거합니다.
otInstanceFinalize(otInstance *aInstance)
void
OpenThread 라이브러리를 사용 중지합니다.
otInstanceGetId(otInstance *aInstance)
uint32_t
인스턴스 식별자를 가져옵니다.
otInstanceGetUptime(otInstance *aInstance)
uint64_t
현재 인스턴스 업타임을 밀리초 단위로 반환합니다.
otInstanceGetUptimeAsString(otInstance *aInstance, char *aBuffer, uint16_t aSize)
void
현재 인스턴스 업타임을 사람이 읽을 수 있는 문자열로 반환합니다.
otInstanceInit(void *aInstanceBuffer, size_t *aInstanceBufferSize)
OpenThread 라이브러리를 초기화합니다.
otInstanceInitMultiple(uint8_t aIdx)
OpenThread 인스턴스를 초기화합니다.
otInstanceInitSingle(void)
OpenThread 라이브러리의 정적 단일 인스턴스를 초기화합니다.
otInstanceIsInitialized(otInstance *aInstance)
bool
인스턴스가 유효하거나 초기화되었는지 여부를 나타냅니다.
otInstanceReset(otInstance *aInstance)
void
플랫폼 재설정을 트리거합니다.
otInstanceResetRadioStack(otInstance *aInstance)
void
OpenThread 라디오 스택의 내부 상태를 재설정합니다.
otInstanceResetToBootloader(otInstance *aInstance)
지원되는 경우 부트로더 모드로 플랫폼 재설정을 트리거합니다.
otRemoveStateChangeCallback(otInstance *aInstance, otStateChangedCallback aCallback, void *aContext)
void
OpenThread 내에서 특정 구성 또는 상태가 변경되는 시점을 나타내는 콜백을 삭제합니다.
otSetStateChangedCallback(otInstance *aInstance, otStateChangedCallback aCallback, void *aContext)
OpenThread 내에서 특정 구성이나 상태가 변경되는 시점을 나타내는 콜백을 등록합니다.

Typedef

otChangedFlags

uint32_t otChangedFlags

변경된 특정 상태/구성을 나타내는 비트 필드를 나타냅니다.

OT_CHANGED_* 정의를 참고하세요.

otInstance

struct otInstance otInstance

OpenThread 인스턴스 구조를 나타냅니다.

otStateChangedCallback

void(* otStateChangedCallback)(otChangedFlags aFlags, void *aContext)

포인터는 OpenThread 내의 특정 구성 또는 상태 변경사항을 알리기 위해 호출됩니다.

세부정보
매개변수
[in] aFlags
변경된 특정 상태를 나타내는 비트 필드입니다. OT_CHANGED_* 정의를 참고하세요.
[in] aContext
애플리케이션별 컨텍스트에 대한 포인터입니다.

함수

otGetRadioVersionString

const char * otGetRadioVersionString(
  otInstance *aInstance
)

OpenThread 라디오 버전 문자열을 가져옵니다.

세부정보
매개변수
[in] aInstance
OpenThread 인스턴스를 가리키는 포인터입니다.
반환
OpenThread 라디오 버전을 가리키는 포인터입니다.

otGetVersionString

const char * otGetVersionString(
  void
)

OpenThread 버전 문자열을 가져옵니다.

세부정보
반환
OpenThread 버전을 가리키는 포인터입니다.

otInstanceErasePersistentInfo

otError otInstanceErasePersistentInfo(
  otInstance *aInstance
)

비휘발성 메모리에 저장된 모든 OpenThread 영구 정보 (네트워크 설정)를 지웁니다.

기기가 disabled 상태/역할인 경우에만 삭제됩니다.

세부정보
매개변수
[in] aInstance
OpenThread 인스턴스를 가리키는 포인터입니다.
반환 값
OT_ERROR_NONE
모든 영구 정보/상태가 삭제되었습니다.
OT_ERROR_INVALID_STATE
기기가 disabled 상태/역할이 아닙니다.

otInstanceFactoryReset

void otInstanceFactoryReset(
  otInstance *aInstance
)

비휘발성 메모리에 저장된 모든 설정을 삭제한 다음 플랫폼 재설정을 트리거합니다.

세부정보
매개변수
[in] aInstance
OpenThread 인스턴스를 가리키는 포인터입니다.

otInstanceFinalize

void otInstanceFinalize(
  otInstance *aInstance
)

OpenThread 라이브러리를 사용 중지합니다.

OpenThread를 더 이상 사용하지 않을 때 이 함수를 호출합니다.

세부정보
매개변수
[in] aInstance
OpenThread 인스턴스를 가리키는 포인터입니다.

otInstanceGetId

uint32_t otInstanceGetId(
  otInstance *aInstance
)

인스턴스 식별자를 가져옵니다.

인스턴스 식별자는 인스턴스가 생성될 때 임의의 값으로 설정되며 초기화 후에 값이 변경되지 않습니다.

세부정보
반환
인스턴스 식별자입니다.

otInstanceGetUptime

uint64_t otInstanceGetUptime(
  otInstance *aInstance
)

현재 인스턴스 업타임을 밀리초 단위로 반환합니다.

OPENTHREAD_CONFIG_UPTIME_ENABLE를 사용 설정해야 합니다.

업타임은 OpenThread 인스턴스가 초기화된 이후의 밀리초 단위로 제공됩니다.

세부정보
매개변수
[in] aInstance
OpenThread 인스턴스를 가리키는 포인터입니다.
반환
업타임 (밀리초)입니다.

otInstanceGetUptimeAsString

void otInstanceGetUptimeAsString(
  otInstance *aInstance,
  char *aBuffer,
  uint16_t aSize
)

현재 인스턴스 업타임을 사람이 읽을 수 있는 문자열로 반환합니다.

OPENTHREAD_CONFIG_UPTIME_ENABLE를 사용 설정해야 합니다.

문자열은 시, 분, 초, 밀리초 (업타임이 1일보다 짧은 경우)의 경우 '::.' 형식을 따르거나 '를 따릅니다.

d.::.' (2일 이상인 경우)

결과 문자열이 aSize 문자 내의 aBuffer에 맞지 않는 경우 문자열이 잘리지만 출력된 문자열은 항상 null로 끝납니다.

세부정보
매개변수
[in] aInstance
OpenThread 인스턴스를 가리키는 포인터입니다.
[out] aBuffer
문자열을 출력할 문자 배열에 대한 포인터입니다.
[in] aSize
aBuffer의 크기 (바이트)입니다. OT_UPTIME_STRING_SIZE를 사용하는 것이 좋습니다.

otInstanceInit

otInstance * otInstanceInit(
  void *aInstanceBuffer,
  size_t *aInstanceBufferSize
)

OpenThread 라이브러리를 초기화합니다.

OpenThread를 초기화하고 후속 OpenThread API 호출을 위해 준비합니다. 이 함수는 OpenThread를 다른 호출하기 전에 호출해야 합니다.

여러 OpenThread 인스턴스 지원이 사용 설정된 경우에만 사용할 수 있습니다.

세부정보
매개변수
[in] aInstanceBuffer
otInstance 구조 할당에 사용하는 OpenThread의 버퍼입니다.
[in,out] aInstanceBufferSize
입력 시 aInstanceBuffer의 크기입니다. 출력 시 otInstance에 필요한 공간이 충분하지 않은 경우 otInstance에 필요한 바이트 수입니다.
반환
새 OpenThread 인스턴스를 가리키는 포인터입니다.
참고 항목:
otInstanceFinalize

otInstanceInitMultiple

otInstance * otInstanceInitMultiple(
  uint8_t aIdx
)

OpenThread 인스턴스를 초기화합니다.

이 함수는 OpenThread를 초기화하고 후속 OpenThread API 호출을 위해 준비합니다. 이 함수는 OpenThread를 다른 호출하기 전에 호출해야 합니다. 이 메서드는 정적 버퍼를 활용하여 OpenThread 인스턴스를 초기화합니다.

이 함수는 여러 OpenThread 정적 인스턴스 지원이 사용 설정된 경우에만 사용할 수 있습니다 (OPENTHREAD_CONFIG_MULTIPLE_STATIC_INSTANCE_ENABLE).

세부정보
매개변수
[in] aIdx
초기화할 OpenThread 인스턴스의 색인입니다.
반환
새 OpenThread 인스턴스를 가리키는 포인터입니다.

otInstanceInitSingle

otInstance * otInstanceInitSingle(
  void
)

OpenThread 라이브러리의 정적 단일 인스턴스를 초기화합니다.

OpenThread를 초기화하고 후속 OpenThread API 호출을 위해 준비합니다. 이 함수는 OpenThread를 다른 호출하기 전에 호출해야 합니다.

여러 OpenThread 인스턴스 지원이 사용 중지된 경우에만 사용할 수 있습니다.

세부정보
반환
단일 OpenThread 인스턴스를 가리키는 포인터입니다.

otInstanceIsInitialized

bool otInstanceIsInitialized(
  otInstance *aInstance
)

인스턴스가 유효하거나 초기화되었는지 여부를 나타냅니다.

인스턴스는 otInstanceInitSingle() (단일 인스턴스 사례의 경우) 또는 otInstanceInit() (다중 인스턴스 사례의 경우)을 사용하여 획득 및 초기화된 경우 유효한 것으로 간주됩니다. 이후에 otInstanceFinalize()를 호출하면 인스턴스가 초기화되지 않은 것으로 간주됩니다.

세부정보
매개변수
[in] aInstance
OpenThread 인스턴스를 가리키는 포인터입니다.
반환
지정된 인스턴스가 유효/초기화되면 TRUE, 그렇지 않으면 FALSE입니다.

otInstanceReset

void otInstanceReset(
  otInstance *aInstance
)

플랫폼 재설정을 트리거합니다.

재설정 프로세스를 통해 모든 OpenThread 상태/정보 (휘발성 메모리에 저장됨)가 지워집니다. otPlatformReset는 비휘발성 메모리에 저장된 영구 상태/정보를 삭제하지 않습니다.

세부정보
매개변수
[in] aInstance
OpenThread 인스턴스를 가리키는 포인터입니다.

otInstanceResetRadioStack

void otInstanceResetRadioStack(
  otInstance *aInstance
)

OpenThread 라디오 스택의 내부 상태를 재설정합니다.

콜백과 구성이 유지됩니다.

이 API는 라디오 빌드 (OPENTHREAD_RADIO = 1)에서만 사용할 수 있습니다.

세부정보
매개변수
[in] aInstance
OpenThread 인스턴스를 가리키는 포인터입니다.

otInstanceResetToBootloader

otError otInstanceResetToBootloader(
  otInstance *aInstance
)

지원되는 경우 부트로더 모드로 플랫폼 재설정을 트리거합니다.

OPENTHREAD_CONFIG_PLATFORM_BOOTLOADER_MODE_ENABLE가 필요합니다.

세부정보
매개변수
[in] aInstance
OpenThread 인스턴스를 가리키는 포인터입니다.
반환 값
OT_ERROR_NONE
부트로더로 재설정되었습니다.
OT_ERROR_BUSY
진행 중인 다른 작업으로 인해 실패했습니다.
OT_ERROR_NOT_CAPABLE
부트로더로 재설정할 수 없습니다.

otRemoveStateChangeCallback

void otRemoveStateChangeCallback(
  otInstance *aInstance,
  otStateChangedCallback aCallback,
  void *aContext
)

OpenThread 내에서 특정 구성 또는 상태가 변경되는 시점을 나타내는 콜백을 삭제합니다.

세부정보
매개변수
[in] aInstance
OpenThread 인스턴스를 가리키는 포인터입니다.
[in] aCallback
특정 구성 또는 상태가 변경될 때 호출되는 함수에 대한 포인터입니다.
[in] aContext
애플리케이션별 컨텍스트에 대한 포인터입니다.

otSetStateChangedCallback

otError otSetStateChangedCallback(
  otInstance *aInstance,
  otStateChangedCallback aCallback,
  void *aContext
)

OpenThread 내에서 특정 구성이나 상태가 변경되는 시점을 나타내는 콜백을 등록합니다.

세부정보
매개변수
[in] aInstance
OpenThread 인스턴스를 가리키는 포인터입니다.
[in] aCallback
특정 구성 또는 상태가 변경될 때 호출되는 함수에 대한 포인터입니다.
[in] aContext
애플리케이션별 컨텍스트에 대한 포인터입니다.
반환 값
OT_ERROR_NONE
콜백 목록에 콜백을 추가했습니다.
OT_ERROR_ALREADY
콜백이 이미 등록되었습니다.
OT_ERROR_NO_BUFS
리소스 제약조건으로 인해 콜백을 추가할 수 없습니다.

매크로

OT_CHANGED_ACTIVE_DATASET

 OT_CHANGED_ACTIVE_DATASET (1U << 28)

활성 운영 데이터 세트가 변경되었습니다.

OT_CHANGED_CHANNEL_MANAGER_NEW_CHANNEL

 OT_CHANGED_CHANNEL_MANAGER_NEW_CHANNEL (1U << 21)

채널 관리자가 대기 중인 새 대화목록 채널이 변경되었습니다.

OT_CHANGED_COMMISSIONER_STATE

 OT_CHANGED_COMMISSIONER_STATE (1U << 23)

커미셔닝된 주가 변경되었습니다.

OT_CHANGED_IP6_ADDRESS_ADDED

 OT_CHANGED_IP6_ADDRESS_ADDED (1U << 0)

IPv6 주소가 추가되었습니다.

OT_CHANGED_IP6_ADDRESS_REMOVED

 OT_CHANGED_IP6_ADDRESS_REMOVED (1U << 1)

IPv6 주소가 삭제되었습니다.

OT_CHANGED_IP6_MULTICAST_SUBSCRIBED

 OT_CHANGED_IP6_MULTICAST_SUBSCRIBED (1U << 12)

IPv6 멀티캐스트 주소를 구독했습니다.

OT_CHANGED_IP6_MULTICAST_UNSUBSCRIBED

 OT_CHANGED_IP6_MULTICAST_UNSUBSCRIBED (1U << 13)

IPv6 멀티캐스트 주소를 구독 취소했습니다.

OT_CHANGED_JOINER_STATE

 OT_CHANGED_JOINER_STATE (1U << 27)

연결자 상태가 변경되었습니다.

OT_CHANGED_NAT64_TRANSLATOR_STATE

 OT_CHANGED_NAT64_TRANSLATOR_STATE (1U << 30)

NAT64 변환기의 상태가 변경되었습니다.

OT_CHANGED_NETWORK_KEY

 OT_CHANGED_NETWORK_KEY (1U << 18)

네트워크 키가 변경되었습니다.

 OT_CHANGED_PARENT_LINK_QUALITY (1U << 31)

상위 링크 품질이 변경되었습니다.

OT_CHANGED_PENDING_DATASET

 OT_CHANGED_PENDING_DATASET (1U << 29)

대기 중인 운영 데이터 세트가 변경되었습니다.

OT_CHANGED_PSKC

 OT_CHANGED_PSKC (1U << 19)

PSKc가 변경되었습니다.

OT_CHANGED_SECURITY_POLICY

 OT_CHANGED_SECURITY_POLICY (1U << 20)

보안 정책이 변경되었습니다.

OT_CHANGED_SUPPORTED_CHANNEL_MASK

 OT_CHANGED_SUPPORTED_CHANNEL_MASK (1U << 22)

지원되는 채널 마스크가 변경되었습니다.

OT_CHANGED_THREAD_BACKBONE_ROUTER_LOCAL

 OT_CHANGED_THREAD_BACKBONE_ROUTER_LOCAL (1U << 26)

로컬 백본 라우터 구성이 변경되었습니다.

OT_CHANGED_THREAD_BACKBONE_ROUTER_STATE

 OT_CHANGED_THREAD_BACKBONE_ROUTER_STATE (1U << 25)

백본 라우터 상태가 변경되었습니다.

OT_CHANGED_THREAD_CHANNEL

 OT_CHANGED_THREAD_CHANNEL (1U << 14)

스레드 네트워크 채널이 변경되었습니다.

OT_CHANGED_THREAD_CHILD_ADDED

 OT_CHANGED_THREAD_CHILD_ADDED (1U << 10)

자녀가 추가되었습니다.

OT_CHANGED_THREAD_CHILD_REMOVED

 OT_CHANGED_THREAD_CHILD_REMOVED (1U << 11)

자녀가 삭제되었습니다.

OT_CHANGED_THREAD_EXT_PANID

 OT_CHANGED_THREAD_EXT_PANID (1U << 17)

스레드 네트워크 확장 PAN ID가 변경되었습니다.

OT_CHANGED_THREAD_KEY_SEQUENCE_COUNTER

 OT_CHANGED_THREAD_KEY_SEQUENCE_COUNTER (1U << 8)

스레드 키 순서가 변경되었습니다.

OT_CHANGED_THREAD_LL_ADDR

 OT_CHANGED_THREAD_LL_ADDR (1U << 3)

링크-로컬 주소가 변경되었습니다.

OT_CHANGED_THREAD_ML_ADDR

 OT_CHANGED_THREAD_ML_ADDR (1U << 4)

메시 로컬 주소가 변경되었습니다.

OT_CHANGED_THREAD_NETDATA

 OT_CHANGED_THREAD_NETDATA (1U << 9)

스레드 네트워크 데이터가 변경되었습니다.

OT_CHANGED_THREAD_NETIF_STATE

 OT_CHANGED_THREAD_NETIF_STATE (1U << 24)

스레드 네트워크 인터페이스 상태가 변경되었습니다.

OT_CHANGED_THREAD_NETWORK_NAME

 OT_CHANGED_THREAD_NETWORK_NAME (1U << 16)

스레드 네트워크 이름이 변경되었습니다.

OT_CHANGED_THREAD_PANID

 OT_CHANGED_THREAD_PANID (1U << 15)

스레드 네트워크 PAN ID가 변경되었습니다.

OT_CHANGED_THREAD_PARTITION_ID

 OT_CHANGED_THREAD_PARTITION_ID (1U << 7)

파티션 ID가 변경되었습니다.

OT_CHANGED_THREAD_RLOC_ADDED

 OT_CHANGED_THREAD_RLOC_ADDED (1U << 5)

RLOC를 추가했습니다.

OT_CHANGED_THREAD_RLOC_REMOVED

 OT_CHANGED_THREAD_RLOC_REMOVED (1U << 6)

RLOC를 삭제했습니다.

OT_CHANGED_THREAD_ROLE

 OT_CHANGED_THREAD_ROLE (1U << 2)

역할 (사용 중지됨, 분리됨, 하위 요소, 라우터, 리더)이 변경되었습니다.

OT_UPTIME_STRING_SIZE

 OT_UPTIME_STRING_SIZE 24

업타임의 문자열 표현에 권장되는 크기입니다.

자료

OpenThread API 참조 주제는 GitHub에서 제공되는 소스 코드에서 비롯됩니다. 자세한 내용을 알아보거나 문서에 참여하려면 리소스를 참고하세요.