31 #if defined(SWIGJAVASCRIPT)
32 #if NODE_MODULE_VERSION >= 0x000D
94 Gpio(
int pin,
bool owner =
true,
bool raw =
false)
102 if (m_gpio == NULL) {
103 throw std::invalid_argument(
"Invalid GPIO pin specified");
119 if (m_gpio == NULL) {
120 throw std::invalid_argument(
"Invalid GPIO context");
142 #if defined(SWIGPYTHON)
148 #elif defined(SWIGJAVASCRIPT)
150 v8isr(uv_work_t* req,
int status)
152 #if NODE_MODULE_VERSION >= 0x000D
153 v8::HandleScope scope(v8::Isolate::GetCurrent());
157 v8::Local<v8::Value> argv[] = { SWIGV8_INTEGER_NEW(-1) };
158 #if NODE_MODULE_VERSION >= 0x000D
159 v8::Local<v8::Function> f = v8::Local<v8::Function>::New(v8::Isolate::GetCurrent(), This->m_v8isr);
160 f->Call(SWIGV8_CURRENT_CONTEXT()->Global(), argc, argv);
162 This->m_v8isr->Call(SWIGV8_CURRENT_CONTEXT()->Global(), argc, argv);
176 uv_work_t* req =
new uv_work_t;
178 uv_queue_work(uv_default_loop(), req, nop, v8isr);
182 isr(
Edge mode, v8::Handle<v8::Function> func)
184 #if NODE_MODULE_VERSION >= 0x000D
185 m_v8isr.Reset(v8::Isolate::GetCurrent(), func);
187 m_v8isr = v8::Persistent<v8::Function>::New(func);
191 #elif defined(SWIGJAVA) || defined(JAVACALLBACK)
193 isr(
Edge mode, jobject runnable)
208 isr(
Edge mode,
void (*fptr)(
void*),
void* args)
222 #if defined(SWIGJAVASCRIPT)
223 #if NODE_MODULE_VERSION >= 0x000D
266 throw std::runtime_error(
"Failed to read direction");
321 #if defined(SWIGJAVASCRIPT)
322 v8::Persistent<v8::Function> m_v8isr;
int read()
Definition: gpio.hpp:277
Result
Definition: types.hpp:198
mraa_result_t mraa_gpio_owner(mraa_gpio_context dev, mraa_boolean_t owner)
API to General Purpose IO.
Definition: gpio.hpp:79
Result write(int value)
Definition: gpio.hpp:288
mraa_result_t mraa_gpio_isr(mraa_gpio_context dev, mraa_gpio_edge_t edge, void(*fptr)(void *), void *args)
unsigned int mraa_boolean_t
Definition: common.h:61
Gpio(int pin, bool owner=true, bool raw=false)
Definition: gpio.hpp:94
mraa_result_t mraa_gpio_isr_exit(mraa_gpio_context dev)
Result isr(Edge mode, void(*fptr)(void *), void *args)
Definition: gpio.hpp:208
mraa_result_t mraa_gpio_close(mraa_gpio_context dev)
~Gpio()
Definition: gpio.hpp:127
mraa_result_t mraa_gpio_dir(mraa_gpio_context dev, mraa_gpio_dir_t dir)
Dir
Definition: gpio.hpp:55
mraa_gpio_dir_t
Definition: gpio.h:70
mraa_gpio_mode_t
Definition: gpio.h:60
Edge
Definition: gpio.hpp:65
mraa_result_t mraa_gpio_mode(mraa_gpio_context dev, mraa_gpio_mode_t mode)
int mraa_gpio_get_pin(mraa_gpio_context dev)
mraa_result_t mraa_gpio_edge_mode(mraa_gpio_context dev, mraa_gpio_edge_t mode)
Result edge(Edge mode)
Definition: gpio.hpp:138
mraa_gpio_edge_t
Definition: gpio.h:80
mraa_gpio_context mraa_gpio_init_raw(int gpiopin)
Result isrExit()
Definition: gpio.hpp:220
struct _gpio * mraa_gpio_context
Definition: gpio.h:55
mraa_gpio_context mraa_gpio_init(int pin)
Result dir(Dir dir)
Definition: gpio.hpp:250
int mraa_gpio_get_pin_raw(mraa_gpio_context dev)
int getPin(bool raw=false)
Definition: gpio.hpp:311
mraa_result_t mraa_gpio_read_dir(mraa_gpio_context dev, mraa_gpio_dir_t *dir)
Gpio(void *gpio_context)
Definition: gpio.hpp:116
Result useMmap(bool enable)
Definition: gpio.hpp:299
mraa_result_t mraa_gpio_write(mraa_gpio_context dev, int value)
mraa_result_t mraa_gpio_use_mmaped(mraa_gpio_context dev, mraa_boolean_t mmap)
Dir readDir()
Definition: gpio.hpp:262
Result mode(Mode mode)
Definition: gpio.hpp:239
int mraa_gpio_read(mraa_gpio_context dev)
Mode
Definition: gpio.hpp:45