@@ -360,6 +360,18 @@ Napi::Value GetLifecycleShutdownTransitionLabel(
360360 return Napi::String::New (env, rcl_lifecycle_shutdown_label);
361361}
362362
363+ Napi::Value IsInitialized (const Napi::CallbackInfo& info) {
364+ Napi::Env env = info.Env ();
365+ RclHandle* state_machine_handle =
366+ RclHandle::Unwrap (info[0 ].As <Napi::Object>());
367+ rcl_lifecycle_state_machine_t * state_machine =
368+ reinterpret_cast <rcl_lifecycle_state_machine_t *>(
369+ state_machine_handle->ptr ());
370+ const bool is_initialized =
371+ RCL_RET_OK == rcl_lifecycle_state_machine_is_initialized (state_machine);
372+ return Napi::Boolean::New (env, is_initialized);
373+ }
374+
363375Napi::Object InitLifecycleBindings (Napi::Env env, Napi::Object exports) {
364376 exports.Set (" createLifecycleStateMachine" ,
365377 Napi::Function::New (env, CreateLifecycleStateMachine));
@@ -383,6 +395,7 @@ Napi::Object InitLifecycleBindings(Napi::Env env, Napi::Object exports) {
383395 Napi::Function::New (env, GetLifecycleTransitionIdToLabel));
384396 exports.Set (" getLifecycleShutdownTransitionLabel" ,
385397 Napi::Function::New (env, GetLifecycleShutdownTransitionLabel));
398+ exports.Set (" isInitialized" , Napi::Function::New (env, IsInitialized));
386399 return exports;
387400}
388401
0 commit comments