static iotjs_adc_t* iotjs_adc_create(const iotjs_jval_t* jadc) { iotjs_adc_t* adc = IOTJS_ALLOC(iotjs_adc_t); IOTJS_VALIDATED_STRUCT_CONSTRUCTOR(iotjs_adc_t, adc); iotjs_jobjectwrap_initialize(&_this->jobjectwrap, jadc, &adc_native_info); return adc; }
iotjs_blehcisocket_t* iotjs_blehcisocket_create(const iotjs_jval_t* jble) { THIS = IOTJS_ALLOC(iotjs_blehcisocket_t); IOTJS_VALIDATED_STRUCT_CONSTRUCTOR(iotjs_blehcisocket_t, blehcisocket); iotjs_jobjectwrap_initialize(&_this->jobjectwrap, jble, &blehcisocket_native_info); iotjs_blehcisocket_initialize(blehcisocket); return blehcisocket; }
static iotjs_spi_t* iotjs_spi_create(const iotjs_jval_t* jspi) { iotjs_spi_t* spi = IOTJS_ALLOC(iotjs_spi_t); IOTJS_VALIDATED_STRUCT_CONSTRUCTOR(iotjs_spi_t, spi); iotjs_jobjectwrap_initialize(&_this->jobjectwrap, jspi, &this_module_native_info); #if defined(__linux__) _this->device = iotjs_string_create(""); #endif return spi; }
static iotjs_pwm_t* iotjs_pwm_create(const iotjs_jval_t* jpwm) { iotjs_pwm_t* pwm = IOTJS_ALLOC(iotjs_pwm_t); IOTJS_VALIDATED_STRUCT_CONSTRUCTOR(iotjs_pwm_t, pwm); iotjs_jobjectwrap_initialize(&_this->jobjectwrap, jpwm, &this_module_native_info); _this->period = -1; _this->duty_cycle = 0; #if defined(__NUTTX__) _this->device_fd = -1; #endif return pwm; }
iotjs_bufferwrap_t* iotjs_bufferwrap_create(const iotjs_jval_t* jbuiltin, size_t length) { iotjs_bufferwrap_t* bufferwrap = IOTJS_ALLOC(iotjs_bufferwrap_t); IOTJS_VALIDATED_STRUCT_CONSTRUCTOR(iotjs_bufferwrap_t, bufferwrap); iotjs_jobjectwrap_initialize(&_this->jobjectwrap, jbuiltin, &this_module_native_info); if (length > 0) { _this->length = length; _this->buffer = iotjs_buffer_allocate(length); IOTJS_ASSERT(_this->buffer != NULL); } else { _this->length = 0; _this->buffer = NULL; } IOTJS_ASSERT( bufferwrap == (iotjs_bufferwrap_t*)(iotjs_jval_get_object_native_handle(jbuiltin))); return bufferwrap; }