|
| save_var_t (const std::string &name_, const std::string &type_, unsigned num_channels_, const mha_real_t rate_, const lsl::channel_format_t format_, const std::string &source_id_, void *data_) |
| C'tor of specialization for complex types. More...
|
|
virtual void * | get_buf_address () const noexcept override |
|
virtual void | set_buf_address (void *data) override |
|
virtual lsl::stream_info | info () const noexcept override |
| Get buffer address as void pointer. More...
|
|
virtual unsigned | data_type () const noexcept override |
| Cast the input pointer to the appropriate type and set the buffer address. More...
|
|
virtual | ~save_var_t ()=default |
|
virtual void | send_frame (unsigned num_entries) override |
| Send a frame of complex types. More...
|
|
virtual | ~save_var_base_t ()=default |
|
Template specialization of the ac2lsl bridge to take care of complex numbers.
This specialization is needed because lsl does not support complex numbers. Order is [re(0), im(0), re(1), im(1), ....]
Send a frame of complex types.
Complex numbers are stored as alternating real and imaginary parts. An array of complex numbers in memory can be reinterpreted as a vector of real numbers that correspond to real and imaginary parts. LSL does not support complex types directly. Send one vector containing {buf[0].re,buf[0].im,buf[1].re,buf[1].im,...} instead.
Implements ac2lsl::save_var_base_t.