CereStim 96 API  RS-0075 Rev 3.00
BStimulator Class Reference

Creates a Stimulator Object. More...

#include "BStimulator.h"

Public Member Functions

BSTIMAPI BStimulator ()
 Default Constructor. More...
 
BSTIMAPI ~BStimulator ()
 Default Destructor. More...
 
BSTIMAPI BResult autoStimulus (UINT8 electrode, BConfig configID)
 Stimulus command to be used within a stimulation script. More...
 
BSTIMAPI BResult beginningOfGroup ()
 Begin simultaneous stimulation commands. More...
 
BSTIMAPI BResult beginningOfSequence ()
 First command of a stimulation script. More...
 
BSTIMAPI BResult configureStimulusPattern (BConfig configID, BWFType afcf, UINT8 pulses, UINT16 amp1, UINT16 amp2, UINT16 width1, UINT16 width2, UINT32 frequency, UINT16 interphase)
 Configures a stimulation waveform. More...
 
BSTIMAPI BResult connect (BInterfaceType stimInterface, void *params)
 Connect to a CereStim 96. More...
 
BSTIMAPI BResult disableModule (UINT8 module)
 Disable a Current Module. More...
 
BSTIMAPI BResult DisableStimulusConfiguration (UINT8 config_id)
 Disables a stimulation waveform configuration so it can't be used. More...
 
BSTIMAPI BResult disconnect ()
 Disconnect from a CereStim 96. More...
 
BSTIMAPI BResult enableModule (UINT8 module)
 Enable a Current Module. More...
 
BSTIMAPI BResult endOfGroup ()
 End simultaneous stimulation commands. More...
 
BSTIMAPI BResult endOfSequence ()
 Last command of a stimulation script. More...
 
BSTIMAPI BResult EraseEeprom ()
 Erase EEProm. More...
 
BSTIMAPI BInterfaceType getInterface ()
 Interface being used. More...
 
BSTIMAPI UINT32 getMaxHardCharge ()
 Max Charge per Phase. More...
 
BSTIMAPI UINT32 getMaxHardFrequency ()
 Maximum Stimulating Frequency. More...
 
BSTIMAPI UINT16 getMaxHardInterphase ()
 Interphase width in uS. More...
 
BSTIMAPI UINT16 getMaxHardWidth ()
 Maximum width of each phase in uS. More...
 
BSTIMAPI UINT32 getMinHardFrequency ()
 Minimum Stimulating Frequency. More...
 
BSTIMAPI UINT32 getMinMaxAmplitude ()
 Min and Max Amplitude. More...
 
BSTIMAPI BResult getModuleFirmwareVersion (UINT16 *output)
 Firmware Version of the Current Modules. More...
 
BSTIMAPI BResult getModuleStatus (UINT8 *output)
 Status of Current Modules. More...
 
BSTIMAPI UINT16 getMotherboardFirmwareVersion ()
 CereStim 96 Motherboard Firmware Revision. More...
 
BSTIMAPI UINT8 getNumberModules ()
 Number of Modules. More...
 
BSTIMAPI UINT16 getProtocolVersion ()
 CereStim 96 communication protocol version. More...
 
BSTIMAPI UINT32 getSerialNumber ()
 Serial Number of the CereStim 96. More...
 
BSTIMAPI UINT32 getUSBAddress ()
 USB Address of device. More...
 
BSTIMAPI BResult groupStimulus (UINT8 beginSeq, UINT8 play, UINT16 times, UINT8 number, BGroupStimulus *input)
 Simultaneous Stimulation in single call. More...
 
BSTIMAPI INT8 isConnected ()
 Checks CereStim R96 Connection status. More...
 
BSTIMAPI INT8 isDeviceLocked ()
 If the device is locked due to not being configured or having current module problems. More...
 
BSTIMAPI INT8 isSafetyDisabled ()
 If safety checks on the set stimulation parameters is disabled or not. More...
 
BSTIMAPI BResult libVersion (BVersion *output)
 API Library Version. More...
 
BSTIMAPI BResult manualStimulus (UINT8 electrode, BConfig configID)
 Send a single stimulus. More...
 
BSTIMAPI BResult maxOutputVoltage (BMaxOutputVoltage *output, UINT8 rw, BOCVolt voltage)
 Sets the compliance voltage of the stimulator. More...
 
BSTIMAPI BResult measureOutputVoltage (BOutputMeasurement *output, UINT8 module, UINT8 electrode)
 Measure the output voltage. More...
 
BSTIMAPI BResult pause ()
 Pauses a stimulation script. More...
 
BSTIMAPI BResult play (UINT16 times)
 Number of repetitions to run the stimulation script. More...
 
BSTIMAPI BResult readDeviceInfo (BDeviceInfo *output)
 Reads information from the CereStim 96. More...
 
BSTIMAPI BResult ReadEeprom (BReadEEpromOutput *output)
 Reads EEProm. More...
 
BSTIMAPI BResult ReadHardwareValues (BReadHardwareValuesOutput *output)
 Get max hardware values based on model. More...
 
BSTIMAPI BResult readSequenceStatus (BSequenceStatus *output)
 Reads the state of the Stimulator. More...
 
BSTIMAPI BResult readStimulusPattern (BStimulusConfiguration *output, BConfig configID)
 Reads back a stimulation waveform. More...
 
BSTIMAPI BResult ResetStimulator ()
 Resets the uController on the CereStim 96 Motherboard. More...
 
BSTIMAPI BResult setDevice (UINT32 deviceIndex)
 Select the device to connect to. More...
 
BSTIMAPI BResult stimulusMaxValues (BMaximumValues *output, UINT8 rw, BOCVolt voltage, UINT16 amplitude, UINT32 phaseCharge, UINT32 frequency)
 Administrative way to set custom safety levels. More...
 
BSTIMAPI BResult stop ()
 Stops a stimulation script from running. More...
 
BSTIMAPI BResult stopTriggerStimulus ()
 Stops waiting for a trigger. More...
 
BSTIMAPI BResult testElectrodes (BTestElectrodes *output)
 Tests all electrodes connected to the CereStim 96. More...
 
BSTIMAPI BResult testModules (BTestModules *output)
 Test Modules Voltage Levels. More...
 
BSTIMAPI BResult triggerStimulus (BTriggerType edge)
 Set the Stimulator to wait for a trigger. More...
 
BSTIMAPI BResult updateElectrodeChannelMap (BElectrodeChannelMap *input)
 Map electrodes to specific channels. More...
 
BSTIMAPI BResult wait (UINT16 milliSeconds)
 Adds a wait to a stimulation script. More...
 
BSTIMAPI BResult WriteEEProm (UINT8 addr, UINT8 val)
 

Static Public Member Functions

static BSTIMAPI BResult scanForDevices (std::vector< UINT32 > &device_serial_nums)
 Scan USB ports for connected CereStim 96. More...
 

Static Protected Member Functions

static void disconnectAll ()
 Disconnects all connected stimulators.
 

Protected Attributes

BStimData * m_psData
 

Static Protected Attributes

static UINT32 m_iStimObjects = 0
 
static BStimulatorstimObjects [12] = { 0 }
 

Detailed Description

The stimulator class encapsulates all the functionallity of the stimulator and allows the user the ability to interface directly with Blackrock Microsystems CereStim 96 device. By encapsulating it in an object, multiple stimulators can be connected to a single Host PC and be used simultaneously.

Examples:
simpleExample.cpp.

The documentation for this class was generated from the following files: