Class: Hypertube::Core::Transmitter::Transmitter
- Inherits:
-
Object
- Object
- Hypertube::Core::Transmitter::Transmitter
- Defined in:
- lib/hypertube-ruby-sdk/core/transmitter/transmitter.rb
Class Method Summary collapse
- .activate(license_key) ⇒ Object
- .get_native_error ⇒ Object
- .send_command(message_byte_array, message_byte_array_len, config_source) ⇒ Object
- .set_config_source(config_path) ⇒ Object
- .set_working_directory(config_path) ⇒ Object
Class Method Details
.activate(license_key) ⇒ Object
31 32 33 34 35 36 37 38 39 40 |
# File 'lib/hypertube-ruby-sdk/core/transmitter/transmitter.rb', line 31 def self.activate(license_key) Hypertube::Core::Transmitter::TransmitterWrapper.ensure_loaded activation_result = Hypertube::Core::Transmitter::TransmitterWrapper.Activate(license_key) if activation_result < 0 = get_native_error raise Exception.new "Hypertube::Sdk::RuntimeBridge activation result: " + activation_result.to_s + ". Native error message: " + else return activation_result end end |
.get_native_error ⇒ Object
42 43 44 45 |
# File 'lib/hypertube-ruby-sdk/core/transmitter/transmitter.rb', line 42 def self.get_native_error Hypertube::Core::Transmitter::TransmitterWrapper.ensure_loaded Hypertube::Core::Transmitter::TransmitterWrapper.GetNativeError end |
.send_command(message_byte_array, message_byte_array_len, config_source) ⇒ Object
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
# File 'lib/hypertube-ruby-sdk/core/transmitter/transmitter.rb', line 10 def self.send_command(, , config_source) Hypertube::Core::Transmitter::TransmitterWrapper.ensure_loaded = FFI::MemoryPointer.new(:uchar, , true) .put_array_of_uchar(0, ) response_len = Hypertube::Core::Transmitter::TransmitterWrapper.SendCommand(, , config_source.to_s) if response_len.positive? response = FFI::MemoryPointer.new(:uchar, response_len, true) response.put_uchar(0, .get_uchar(0)) Hypertube::Core::Transmitter::TransmitterWrapper.ReadResponse(response, response_len) response.get_array_of_uchar(0, response_len) elsif response_len.zero? raise RuntimeError, "Response is empty" else = get_native_error raise RuntimeError, "Hypertube::Sdk::RuntimeBridge native error code: #{response_len}. #{}" end end |
.set_config_source(config_path) ⇒ Object
47 48 49 50 51 52 53 54 55 56 |
# File 'lib/hypertube-ruby-sdk/core/transmitter/transmitter.rb', line 47 def self.set_config_source(config_path) Hypertube::Core::Transmitter::TransmitterWrapper.ensure_loaded set_config_result = Hypertube::Core::Transmitter::TransmitterWrapper.SetConfigSource(config_path) if set_config_result < 0 = get_native_error raise Exception.new "Hypertube::Sdk::RuntimeBridge set config source result: " + set_config_result.to_s + ". Native error message: " + else return set_config_result end end |
.set_working_directory(config_path) ⇒ Object
58 59 60 61 62 63 64 65 66 67 |
# File 'lib/hypertube-ruby-sdk/core/transmitter/transmitter.rb', line 58 def self.set_working_directory(config_path) Hypertube::Core::Transmitter::TransmitterWrapper.ensure_loaded set_working_directory_result = Hypertube::Core::Transmitter::TransmitterWrapper.SetWorkingDirectory(config_path) if set_working_directory_result < 0 = get_native_error raise Exception.new "Hypertube::Sdk::RuntimeBridge set working directory result: " + set_working_directory_result.to_s + ". Native error message: " + else return set_working_directory_result end end |