Difference between revisions of "Device (Java)"

From Neurotech Software Development Kit
Jump to: navigation, search
Line 1: Line 1:
ru.neurotech.neurodevices
+
ru.neuromd.neurosdk
  
<span style="font-size: 150%;">'''Class NeuroDevice'''</span>
+
<span style="font-size: 150%;">'''Class Device'''</span>
  
 
==Related Classes==
 
==Related Classes==
  
ru.neurotech.neurodevices.[[NeuroConnection Class|NeuroConnection]]
+
ru.neuromd.neurosdk.[[DeviceScanner (Java)|DeviceScanner]]
 
 
ru.neurotech.neurodevices.[[DeviceFeature Enumeration|DeviceFeature]]
 
 
 
ru.neurotech.neurodevices.state.[[NeuroDeviceError Enumeration|NeuroDeviceError]]
 
 
 
ru.neurotech.neurodevices.state.[[NeuroDeviceState Enumeration|NeuroDeviceState]]
 
  
 
==Classes hierarchy==
 
==Classes hierarchy==
 
<ul>
 
<ul>
 
<li>java.lang.Object</li>
 
<li>java.lang.Object</li>
 
<ul>
 
<li>ru.neurotech.common.[[VisualizableDevice Class|VisualizableDevice]]</li>
 
 
 
<ul>
 
<ul>
<li>ru.neurotech.neurodevices.'''NeuroDevice'''</li>
+
<li>ru.neuromd.neurosdk.'''Device'''</li>
</ul>
 
 
</ul>
 
</ul>
 
</ul>
 
</ul>
  
 
==Class definition==
 
==Class definition==
<code><span style="color:#0066FF;">'''public class'''</span> NeuroDevice <span style="color:#0066FF;">'''extends'''</span> [[VisualizableDevice Class|VisualizableDevice]]</code>
+
<code><span style="color:#0066FF;">'''public class'''</span>Device</code>
 
 
Represents Neurotech™ device on a layer of algorithmic functionality
 
  
Provides signal and misc channels and methods for signal processing and viewing</div>
+
The Device class is an abstraction for NeuroMD BLE devices. This abstraction provides functions for changing of device state by executing commands and setting parameters. Each device have different sets of supported commands and parameters, Device class has functions designed to get information about these sets. Callibri and Braibit devices has different parameters sets and provides different ways to access them. Device class hides all differences behind its interface and provides universal way to read and write parameters, execute commands and receive biopotential signals.
  
  
Line 40: Line 27:
 
|'''Field and Description'''
 
|'''Field and Description'''
 
|- valign="top"
 
|- valign="top"
|[[SubscribersNotifier Class|SubscribersNotifier]]&lt;'''[[NeuroDeviceState Enumeration|NeuroDeviceState]]'''&gt;
+
|[[SubscribersNotifier Class|SubscribersNotifier]]&lt;'''[[DeviceState (Java)|DeviceState]]'''&gt;
|[[#deviceStateChanged|'''deviceStateChanged''']]
+
|[[#parameterChanged|'''deviceStateChanged''']]
 
Subscribe this event to get notifications about device state
 
Subscribe this event to get notifications about device state
 
|}
 
|}
  
 
==Constructor Summary==
 
==Constructor Summary==
{| class="wikitable"
+
You are not able to create Device directly. Use .[[DeviceScanner (Java)|DeviceScanner]] to find and create devices
|- style="background-color: #dee3e9;"
 
|'''Constructor and Description'''
 
|-
 
|[[#NeuroDevice|NeuroDevice]](<span style="color:#0066FF;">'''long'''</span> nativeObjPtr)
 
|}
 
  
 
==Methods Summary==
 
==Methods Summary==
Line 248: Line 230:
  
 
Disconnects from device
 
Disconnects from device
 
 
<div class="header">
 
<div class="subTitle">ru.neurotech.neurosdk</div>
 
<h2 title="Class Device" class="title">Class Device</h2>
 
</div>
 
<div class="contentContainer">
 
<ul class="inheritance">
 
<li>java.lang.Object</li>
 
<li>
 
<ul class="inheritance">
 
<li>ru.neurotech.neurosdk.Device</li>
 
</ul>
 
</li>
 
</ul>
 
<div class="description">
 
<ul class="blockList">
 
<li class="blockList">
 
<hr>
 
<br>
 
<pre>public class <span class="typeNameLabel">Device</span>
 
extends java.lang.Object</pre>
 
</li>
 
</ul>
 
</div>
 
<div class="summary">
 
<ul class="blockList">
 
<li class="blockList">
 
<!-- =========== FIELD SUMMARY =========== -->
 
<ul class="blockList">
 
<li class="blockList"><a name="field.summary">
 
<!--  -->
 
</a>
 
<h3>Field Summary</h3>
 
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
 
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
 
<tr>
 
<th class="colFirst" scope="col">Modifier and Type</th>
 
<th class="colLast" scope="col">Field and Description</th>
 
</tr>
 
<tr class="altColor">
 
<td class="colFirst"><code><a href="../../../ru/neurotech/common/SubscribersNotifier.html" title="class in ru.neurotech.common">SubscribersNotifier</a>&lt;<a href="../../../ru/neurotech/neurosdk/parameters/ParameterName.html" title="enum in ru.neurotech.neurosdk.parameters">ParameterName</a>&gt;</code></td>
 
<td class="colLast"><code><span class="memberNameLink"><a href="../../../ru/neurotech/neurosdk/Device.html#parameterChanged">parameterChanged</a></span></code>
 
<div class="block">Subscribe this event to receive notifications about changes of device parameters</div>
 
</td>
 
</tr>
 
</table>
 
</li>
 
</ul>
 
<!-- ========== METHOD SUMMARY =========== -->
 
<ul class="blockList">
 
<li class="blockList"><a name="method.summary">
 
<!--  -->
 
</a>
 
<h3>Method Summary</h3>
 
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
 
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
 
<tr>
 
<th class="colFirst" scope="col">Modifier and Type</th>
 
<th class="colLast" scope="col">Method and Description</th>
 
</tr>
 
<tr id="i0" class="altColor">
 
<td class="colFirst"><code><a href="../../../ru/neurotech/neurosdk/channels/ChannelInfo.html" title="interface in ru.neurotech.neurosdk.channels">ChannelInfo</a>[]</code></td>
 
<td class="colLast"><code><span class="memberNameLink"><a href="../../../ru/neurotech/neurosdk/Device.html#channels--">channels</a></span>()</code>
 
<div class="block">Returns information about supported channels
 
Check this information before creation of channel.</div>
 
</td>
 
</tr>
 
<tr id="i1" class="rowColor">
 
<td class="colFirst"><code><a href="../../../ru/neurotech/neurosdk/parameters/Command.html" title="enum in ru.neurotech.neurosdk.parameters">Command</a>[]</code></td>
 
<td class="colLast"><code><span class="memberNameLink"><a href="../../../ru/neurotech/neurosdk/Device.html#commands--">commands</a></span>()</code>
 
<div class="block">Returns supported commands of device</div>
 
</td>
 
</tr>
 
<tr id="i2" class="altColor">
 
<td class="colFirst"><code>void</code></td>
 
<td class="colLast"><code><span class="memberNameLink"><a href="../../../ru/neurotech/neurosdk/Device.html#connect--">connect</a></span>()</code>
 
<div class="block">Tries to establish connection with device
 
Check DeviceState parameter or subscribe parameterChanged event for operation result</div>
 
</td>
 
</tr>
 
<tr id="i3" class="rowColor">
 
<td class="colFirst"><code>void</code></td>
 
<td class="colLast"><code><span class="memberNameLink"><a href="../../../ru/neurotech/neurosdk/Device.html#disconnect--">disconnect</a></span>()</code>
 
<div class="block">Disconnects from device
 
Check DeviceState parameter or subscribe parameterChanged event for operation result</div>
 
</td>
 
</tr>
 
<tr id="i4" class="altColor">
 
<td class="colFirst"><code>boolean</code></td>
 
<td class="colLast"><code><span class="memberNameLink"><a href="../../../ru/neurotech/neurosdk/Device.html#execute-ru.neurotech.neurosdk.parameters.Command-">execute</a></span>(<a href="../../../ru/neurotech/neurosdk/parameters/Command.html" title="enum in ru.neurotech.neurosdk.parameters">Command</a>&nbsp;cmd)</code>
 
<div class="block">Tries to execute command and returns value indicating operations success.</div>
 
</td>
 
</tr>
 
<tr id="i5" class="rowColor">
 
<td class="colFirst"><code>void</code></td>
 
<td class="colLast"><code><span class="memberNameLink"><a href="../../../ru/neurotech/neurosdk/Device.html#finalize--">finalize</a></span>()</code>&nbsp;</td>
 
</tr>
 
<tr id="i6" class="altColor">
 
<td class="colFirst"><code><a href="../../../ru/neurotech/neurosdk/parameters/Parameter.html" title="class in ru.neurotech.neurosdk.parameters">Parameter</a>[]</code></td>
 
<td class="colLast"><code><span class="memberNameLink"><a href="../../../ru/neurotech/neurosdk/Device.html#parameters--">parameters</a></span>()</code>
 
<div class="block">Returns all available parameters of device, their types and access rights</div>
 
</td>
 
</tr>
 
<tr id="i7" class="rowColor">
 
<td class="colFirst"><code>&lt;ParamType&gt;<br>ParamType</code></td>
 
<td class="colLast"><code><span class="memberNameLink"><a href="../../../ru/neurotech/neurosdk/Device.html#readParam-ru.neurotech.neurosdk.parameters.ParameterName-">readParam</a></span>(<a href="../../../ru/neurotech/neurosdk/parameters/ParameterName.html" title="enum in ru.neurotech.neurosdk.parameters">ParameterName</a>&nbsp;param)</code>
 
<div class="block">Return value of specified parameter of device.</div>
 
</td>
 
</tr>
 
<tr id="i8" class="altColor">
 
<td class="colFirst"><code>boolean</code></td>
 
<td class="colLast"><code><span class="memberNameLink"><a href="../../../ru/neurotech/neurosdk/Device.html#setParam-ru.neurotech.neurosdk.parameters.ParameterName-java.lang.Object-">setParam</a></span>(<a href="../../../ru/neurotech/neurosdk/parameters/ParameterName.html" title="enum in ru.neurotech.neurosdk.parameters">ParameterName</a>&nbsp;param,
 
        java.lang.Object&nbsp;value)</code>
 
<div class="block">Sets value for specified parameter and returns value indicating success of operation.</div>
 
</td>
 
</tr>
 
</table>
 
<ul class="blockList">
 
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
 
<!--  -->
 
</a>
 
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
 
<code>clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
 
</ul>
 
</li>
 
</ul>
 
</li>
 
</ul>
 
</div>
 
<div class="details">
 
<ul class="blockList">
 
<li class="blockList">
 
<!-- ============ FIELD DETAIL =========== -->
 
<ul class="blockList">
 
<li class="blockList"><a name="field.detail">
 
<!--  -->
 
</a>
 
<h3>Field Detail</h3>
 
<a name="parameterChanged">
 
<!--  -->
 
</a>
 
<ul class="blockListLast">
 
<li class="blockList">
 
<h4>parameterChanged</h4>
 
<pre>public final&nbsp;<a href="../../../ru/neurotech/common/SubscribersNotifier.html" title="class in ru.neurotech.common">SubscribersNotifier</a>&lt;<a href="../../../ru/neurotech/neurosdk/parameters/ParameterName.html" title="enum in ru.neurotech.neurosdk.parameters">ParameterName</a>&gt; parameterChanged</pre>
 
<div class="block">Subscribe this event to receive notifications about changes of device parameters</div>
 
</li>
 
</ul>
 
</li>
 
</ul>
 
<!-- ============ METHOD DETAIL ========== -->
 
<ul class="blockList">
 
<li class="blockList"><a name="method.detail">
 
<!--  -->
 
</a>
 
<h3>Method Detail</h3>
 
<a name="finalize--">
 
<!--  -->
 
</a>
 
<ul class="blockList">
 
<li class="blockList">
 
<h4>finalize</h4>
 
<pre>public&nbsp;void&nbsp;finalize()
 
              throws java.lang.Throwable</pre>
 
<dl>
 
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
 
<dd><code>finalize</code>&nbsp;in class&nbsp;<code>java.lang.Object</code></dd>
 
<dt><span class="throwsLabel">Throws:</span></dt>
 
<dd><code>java.lang.Throwable</code></dd>
 
</dl>
 
</li>
 
</ul>
 
<a name="connect--">
 
<!--  -->
 
</a>
 
<ul class="blockList">
 
<li class="blockList">
 
<h4>connect</h4>
 
<pre>public&nbsp;void&nbsp;connect()</pre>
 
<div class="block">Tries to establish connection with device
 
Check DeviceState parameter or subscribe parameterChanged event for operation result</div>
 
</li>
 
</ul>
 
<a name="disconnect--">
 
<!--  -->
 
</a>
 
<ul class="blockList">
 
<li class="blockList">
 
<h4>disconnect</h4>
 
<pre>public&nbsp;void&nbsp;disconnect()</pre>
 
<div class="block">Disconnects from device
 
Check DeviceState parameter or subscribe parameterChanged event for operation result</div>
 
</li>
 
</ul>
 
<a name="channels--">
 
<!--  -->
 
</a>
 
<ul class="blockList">
 
<li class="blockList">
 
<h4>channels</h4>
 
<pre>public&nbsp;<a href="../../../ru/neurotech/neurosdk/channels/ChannelInfo.html" title="interface in ru.neurotech.neurosdk.channels">ChannelInfo</a>[]&nbsp;channels()</pre>
 
<div class="block">Returns information about supported channels
 
Check this information before creation of channel. If device does not support channel,
 
channel object won't be initialized with it</div>
 
<dl>
 
<dt><span class="returnLabel">Returns:</span></dt>
 
<dd>Array of channel info objects</dd>
 
</dl>
 
</li>
 
</ul>
 
<a name="commands--">
 
<!--  -->
 
</a>
 
<ul class="blockList">
 
<li class="blockList">
 
<h4>commands</h4>
 
<pre>public&nbsp;<a href="../../../ru/neurotech/neurosdk/parameters/Command.html" title="enum in ru.neurotech.neurosdk.parameters">Command</a>[]&nbsp;commands()</pre>
 
<div class="block">Returns supported commands of device</div>
 
<dl>
 
<dt><span class="returnLabel">Returns:</span></dt>
 
<dd>Array of supported commands</dd>
 
</dl>
 
</li>
 
</ul>
 
<a name="parameters--">
 
<!--  -->
 
</a>
 
<ul class="blockList">
 
<li class="blockList">
 
<h4>parameters</h4>
 
<pre>public&nbsp;<a href="../../../ru/neurotech/neurosdk/parameters/Parameter.html" title="class in ru.neurotech.neurosdk.parameters">Parameter</a>[]&nbsp;parameters()</pre>
 
<div class="block">Returns all available parameters of device, their types and access rights</div>
 
<dl>
 
<dt><span class="returnLabel">Returns:</span></dt>
 
<dd>Array of available parameters</dd>
 
</dl>
 
</li>
 
</ul>
 
<a name="execute-ru.neurotech.neurosdk.parameters.Command-">
 
<!--  -->
 
</a>
 
<ul class="blockList">
 
<li class="blockList">
 
<h4>execute</h4>
 
<pre>public&nbsp;boolean&nbsp;execute(<a href="../../../ru/neurotech/neurosdk/parameters/Command.html" title="enum in ru.neurotech.neurosdk.parameters">Command</a>&nbsp;cmd)</pre>
 
<div class="block">Tries to execute command and returns value indicating operations success. Will throw if
 
device does not support specified command. To get supported commands call commands() method</div>
 
<dl>
 
<dt><span class="paramLabel">Parameters:</span></dt>
 
<dd><code>cmd</code> - Command to execute</dd>
 
<dt><span class="returnLabel">Returns:</span></dt>
 
<dd>Operation success indicator</dd>
 
<dt><span class="throwsLabel">Throws:</span></dt>
 
<dd><code>java.lang.UnsupportedOperationException</code></dd>
 
</dl>
 
</li>
 
</ul>
 
<a name="readParam-ru.neurotech.neurosdk.parameters.ParameterName-">
 
<!--  -->
 
</a>
 
<ul class="blockList">
 
<li class="blockList">
 
<h4>readParam</h4>
 
<pre>public&nbsp;&lt;ParamType&gt;&nbsp;ParamType&nbsp;readParam(<a href="../../../ru/neurotech/neurosdk/parameters/ParameterName.html" title="enum in ru.neurotech.neurosdk.parameters">ParameterName</a>&nbsp;param)</pre>
 
<div class="block">Return value of specified parameter of device. Will throw if parameter does not present in
 
device. To get supported parameters and type information for parameter call parameters()
 
method. It returns Parameter object which consists of parameter name, type and access mode</div>
 
<dl>
 
<dt><span class="paramLabel">Parameters:</span></dt>
 
<dd><code>param</code> - ParameterName to read</dd>
 
<dt><span class="returnLabel">Returns:</span></dt>
 
<dd>Parameter value</dd>
 
<dt><span class="throwsLabel">Throws:</span></dt>
 
<dd><code>java.lang.UnsupportedOperationException</code></dd>
 
</dl>
 
</li>
 
</ul>
 
<a name="setParam-ru.neurotech.neurosdk.parameters.ParameterName-java.lang.Object-">
 
<!--  -->
 
</a>
 
<ul class="blockListLast">
 
<li class="blockList">
 
<h4>setParam</h4>
 
<pre>public&nbsp;boolean&nbsp;setParam(<a href="../../../ru/neurotech/neurosdk/parameters/ParameterName.html" title="enum in ru.neurotech.neurosdk.parameters">ParameterName</a>&nbsp;param,
 
                        java.lang.Object&nbsp;value)</pre>
 
<div class="block">Sets value for specified parameter and returns value indicating success of operation. Will
 
throw if parameter does not present in device or has only Read access mode. To get supported
 
parameters and type information for parameter call parameters() method. It returns Parameter
 
object which consists of parameter name, type and access mode</div>
 
<dl>
 
<dt><span class="paramLabel">Parameters:</span></dt>
 
<dd><code>param</code> - Name of parameter to set</dd>
 
<dd><code>value</code> - Parameter value</dd>
 
<dt><span class="returnLabel">Returns:</span></dt>
 
<dd>Operation success</dd>
 
<dt><span class="throwsLabel">Throws:</span></dt>
 
<dd><code>java.lang.UnsupportedOperationException</code></dd>
 
</dl>
 
</li>
 
</ul>
 
</li>
 
</ul>
 
</li>
 
</ul>
 
</div>
 
</div>
 
<!-- ========= END OF CLASS DATA ========= -->
 
<!-- ======= START OF BOTTOM NAVBAR ====== -->
 
<div class="bottomNav"><a name="navbar.bottom">
 
<!--  -->
 
</a>
 
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
 
<a name="navbar.bottom.firstrow">
 
<!--  -->
 
</a>
 
<ul class="navList" title="Navigation">
 
<li><a href="../../../overview-summary.html">Overview</a></li>
 
<li><a href="package-summary.html">Package</a></li>
 
<li class="navBarCell1Rev">Class</li>
 
<li><a href="package-tree.html">Tree</a></li>
 
<li><a href="../../../deprecated-list.html">Deprecated</a></li>
 
<li><a href="../../../index-files/index-1.html">Index</a></li>
 
<li><a href="../../../help-doc.html">Help</a></li>
 
</ul>
 
</div>
 
<div class="subNav">
 
<ul class="navList">
 
<li>Prev&nbsp;Class</li>
 
<li><a href="../../../ru/neurotech/neurosdk/DeviceScanner.html" title="class in ru.neurotech.neurosdk"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 
</ul>
 
<ul class="navList">
 
<li><a href="../../../index.html?ru/neurotech/neurosdk/Device.html" target="_top">Frames</a></li>
 
<li><a href="Device.html" target="_top">No&nbsp;Frames</a></li>
 
</ul>
 
<ul class="navList" id="allclasses_navbar_bottom">
 
<li><a href="../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
 
</ul>
 
<div>
 
<script type="text/javascript"><!--
 
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
 
  if(window==top) {
 
    allClassesLink.style.display = "block";
 
  }
 
  else {
 
    allClassesLink.style.display = "none";
 
  }
 
  //-->
 
</script>
 
</div>
 
<div>
 
<ul class="subNavList">
 
<li>Summary:&nbsp;</li>
 
<li>Nested&nbsp;|&nbsp;</li>
 
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
 
<li>Constr&nbsp;|&nbsp;</li>
 
<li><a href="#method.summary">Method</a></li>
 
</ul>
 
<ul class="subNavList">
 
<li>Detail:&nbsp;</li>
 
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
 
<li>Constr&nbsp;|&nbsp;</li>
 
<li><a href="#method.detail">Method</a></li>
 
</ul>
 
</div>
 
<a name="skip.navbar.bottom">
 
<!--  -->
 
</a></div>
 
<!-- ======== END OF BOTTOM NAVBAR ======= -->
 
</body>
 
</html>
 

Revision as of 07:02, 28 April 2018

ru.neuromd.neurosdk

Class Device

Related Classes

ru.neuromd.neurosdk.DeviceScanner

Classes hierarchy

  • java.lang.Object
    • ru.neuromd.neurosdk.Device

Class definition

public classDevice

The Device class is an abstraction for NeuroMD BLE devices. This abstraction provides functions for changing of device state by executing commands and setting parameters. Each device have different sets of supported commands and parameters, Device class has functions designed to get information about these sets. Callibri and Braibit devices has different parameters sets and provides different ways to access them. Device class hides all differences behind its interface and provides universal way to read and write parameters, execute commands and receive biopotential signals.


Fields Summary

Modifier and Type Field and Description
SubscribersNotifier<DeviceState> deviceStateChanged

Subscribe this event to get notifications about device state

Constructor Summary

You are not able to create Device directly. Use .DeviceScanner to find and create devices

Methods Summary

Modifier and Type Method and Description
void close()

Close device and free all resources

void connect()

Establishes connection with device services

void disconnect()

Disconnects from device

void finalize()
java.lang.String getAddress()

Returns Bluetooth LE MAC address

int getBatteryLevel()

Returns battery charge level in percents

NeuroDeviceError getError()

Returns device error state information

DeviceFeature[] getFeature()

Returns supported device features

java.lang.String getName()

Returns name of BLE device

NeuroDevice getNeuroDevice()

Returns this object

SignalSubsystem getSignalSubsystem()

Returns subsystem for SIGNAL device feature

NeuroDeviceState getState()

Returns common device state

StimulationSubsystem getStimulationSubsystem()

Returns subsystem for STIMUL device feature

Field Detail

deviceStateChanged

public final SubscribersNotifier<NeuroDeviceState> deviceStateChanged

Subscribe this event to get notifications about device state

Constructor Detail

NeuroDevice

public NeuroDevice(long nativeObjPtr)

Method Detail

finalize

public void finalize() throws java.lang.Throwable

Overrides:
finalize in class java.lang.Object
Throws:
java.lang.Throwable


close

public void close()


getState

public NeuroDeviceState getState()

Returns NeuroDevice state

Returns:
Device state

getError

public NeuroDeviceError getError()

Returns error type if device is in error state

Returns:
Error type for device error state

getName

public java.lang.String getName()

Description copied from class: VisualizableDevice

Returns name of BLE device

Specified by:
VisualizableDevice.getName() in class VisualizableDevice
Returns:
BLE device name

getAddress

public java.lang.String getAddress()

Description copied from class: VisualizableDevice

Returns Bluetooth LE MAC address
Specified by:
VisualizableDevice.getAddress() in class VisualizableDevice
Returns:
device unique address

getBatteryLevel

public int getBatteryLevel()

Description copied from class: VisualizableDevice

Returns battery state

Specified by:
VisualizableDevice.getBatteryLevel() in class VisualizableDevice
Returns:
battery charge level in percents

getNeuroDevice

public NeuroDevice getNeuroDevice()

Description copied from class: VisualizableDevice Returns this object. This method is for comapatability with VisualizableDevice class interface, inherited to use NeuroDevice in scopes where VisualizableDevice is needed

Specified by:
VisualizableDevice.getNeuroDevice() in class VisualizableDevice
Returns:
This NeuroDevice object


getSignalSubsystem

public SignalSubsystem getSignalSubsystem()

Returns subsystem for SIGNAL device feature

Returns:
Signal subsystem of device. Null if is not supported

getStimulationSubsystem

public StimulationSubsystem getStimulationSubsystem()

Returns subsystem for STIMUL device feature

Returns:
Stimulation subsystem of device. Null if is not supported

getFeatures

public DeviceFeature[] getFeatures()

Returns supported device features

Returns:
Device features

connect

public void connect()

Establishes connection with device services

disconnect

public void disconnect()

Disconnects from device