Open Ephys GUI
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Classes | Public Types | Public Member Functions | Public Attributes
GenericProcessor Class Reference

Abstract base class for creating processors. More...

#include <GenericProcessor.h>

Inheritance diagram for GenericProcessor:
AccessClass AudioNode EventNode FilterNode LfpDisplayNode Merger RecordNode ResamplingNode SignalGenerator SourceNode SpikeDetector SpikeDisplayNode Splitter WiFiOutput

List of all members.

Classes

struct  ProcessorSettings

Public Types

enum  eventTypes {
  TIMESTAMP = 0, BUFFER_SIZE = 1, PARAMETER_CHANGE = 2, TTL = 3,
  SPIKE = 4, EEG = 5, CONTINUOUS = 6
}
enum  eventChannelTypes { GENERIC_EVENT = 999, SINGLE_ELECTRODE = 1, STEREOTRODE = 2, TETRODE = 4 }

Public Member Functions

 GenericProcessor (const String &name_)
virtual ~GenericProcessor ()
const String getName () const
virtual void prepareToPlay (double sampleRate, int estimatedSamplesPerBlock)
void releaseResources ()
virtual void setParameter (int parameterIndex, float newValue)
virtual AudioProcessorEditor * createEditor ()
bool hasEditor () const
void reset ()
void setCurrentProgramStateInformation (const void *data, int sizeInBytes)
void setStateInformation (const void *data, int sizeInBytes)
void getCurrentProgramStateInformation (MemoryBlock &destData)
void getStateInformation (MemoryBlock &destData)
void changeProgramName (int index, const String &newName)
void setCurrentProgram (int index)
const String getInputChannelName (int channelIndex) const
const String getOutputChannelName (int channelIndex) const
const String getParameterName (int parameterIndex)
const String getParameterText (int parameterIndex)
const String getProgramName (int index)
bool isInputChannelStereoPair (int index) const
bool isOutputChannelStereoPair (int index) const
bool acceptsMidi () const
bool producesMidi () const
bool isParameterAutomatable (int parameterIndex)
bool isMetaParameter (int parameterIndex)
int getNumParameters ()
int getNumPrograms ()
int getCurrentProgram ()
float getParameter (int parameterIndex)
ParametergetParameterByName (String parameterName)
ParametergetParameterReference (int parameterIndex)
virtual void process (AudioSampleBuffer &, MidiBuffer &, int &)=0
virtual float getSampleRate ()
virtual float getDefaultSampleRate ()
virtual int getNumInputs ()
virtual int getNumOutputs ()
virtual int getDefaultNumOutputs ()
virtual float getDefaultBitVolts ()
virtual int getNextChannel (bool)
virtual void resetConnections ()
virtual void setCurrentChannel (int chan)
int getNodeId ()
void setNodeId (int id)
GenericProcessorgetSourceNode ()
GenericProcessorgetDestNode ()
virtual void switchIO (int)
virtual void switchIO ()
virtual void setPathToProcessor (GenericProcessor *p)
virtual void setSourceNode (GenericProcessor *sn)
virtual void setDestNode (GenericProcessor *dn)
virtual void setMergerSourceNode (GenericProcessor *sn)
virtual void setSplitterDestNode (GenericProcessor *dn)
virtual bool isSource ()
virtual bool isSink ()
virtual bool isSplitter ()
virtual bool isMerger ()
virtual bool canSendSignalTo (GenericProcessor *)
virtual bool isReady ()
virtual bool enable ()
virtual bool disable ()
virtual bool enabledState ()
virtual void enabledState (bool t)
virtual void enableCurrentChannel (bool)
virtual bool stillHasSource ()
virtual AudioSampleBuffer * getContinuousBuffer ()
virtual MidiBuffer * getEventBuffer ()
virtual int checkForEvents (MidiBuffer &mb)
virtual void addEvent (MidiBuffer &mb, uint8 type, int sampleNum, uint8 eventID=0, uint8 eventChannel=0, uint8 numBytes=0, uint8 *data=0)
virtual void handleEvent (int eventType, MidiMessage &event)
virtual GenericEditorgetEditor ()
virtual bool isAudioOrRecordNode ()
virtual bool recordStatus (int chan)
virtual bool audioStatus (int chan)
virtual void clearSettings ()
virtual void generateDefaultChannelNames (StringArray &)
virtual void update ()
virtual void updateSettings ()
void setStartChannel (int i)
int getStartChannel ()
- Public Member Functions inherited from AccessClass
 AccessClass ()
 ~AccessClass ()
void setUIComponent (UIComponent *)
virtual void updateChildComponents ()
EditorViewportgetEditorViewport ()
DataViewportgetDataViewport ()
ProcessorListgetProcessorList ()
ProcessorGraphgetProcessorGraph ()
ControlPanelgetControlPanel ()
MessageCentergetMessageCenter ()
UIComponentgetUIComponent ()
AudioComponentgetAudioComponent ()

Public Attributes

GenericProcessorsourceNode
GenericProcessordestNode
bool isEnabled
bool wasConnected
int nextAvailableChannel
int saveOrder
int loadOrder
int currentChannel
ScopedPointer< GenericEditoreditor
ProcessorSettings settings
int nodeId
Array< Parameterparameters
StringArray parameterNames
Parameter nullParam

Detailed Description

Abstract base class for creating processors.

All processors must be derived from this class, and must provide an implementation of the process() method.

Any processors that are not filters must override the isSource(), isSink(), isSplitter(), and isMerger() methods.

See also:
ProcessorGraph, GenericEditor, SourceNode, FilterNode, LfpDisplayNode

Member Enumeration Documentation

Enumerator:
GENERIC_EVENT 
SINGLE_ELECTRODE 
STEREOTRODE 
TETRODE 
Enumerator:
TIMESTAMP 
BUFFER_SIZE 
PARAMETER_CHANGE 
TTL 
SPIKE 
EEG 
CONTINUOUS 

Constructor & Destructor Documentation

GenericProcessor::GenericProcessor ( const String &  name_)
virtual GenericProcessor::~GenericProcessor ( )
virtual

Member Function Documentation

bool GenericProcessor::acceptsMidi ( ) const
inline
virtual void GenericProcessor::addEvent ( MidiBuffer &  mb,
uint8  type,
int  sampleNum,
uint8  eventID = 0,
uint8  eventChannel = 0,
uint8  numBytes = 0,
uint8 *  data = 0 
)
virtual
virtual bool GenericProcessor::audioStatus ( int  chan)
virtual
virtual bool GenericProcessor::canSendSignalTo ( GenericProcessor )
inlinevirtual
void GenericProcessor::changeProgramName ( int  index,
const String &  newName 
)
inline
virtual int GenericProcessor::checkForEvents ( MidiBuffer &  mb)
virtual
virtual void GenericProcessor::clearSettings ( )
virtual
virtual AudioProcessorEditor* GenericProcessor::createEditor ( )
virtual
virtual bool GenericProcessor::disable ( )
inlinevirtual
virtual bool GenericProcessor::enable ( )
inlinevirtual
virtual void GenericProcessor::enableCurrentChannel ( bool  )
inlinevirtual

Reimplemented in AudioNode.

virtual bool GenericProcessor::enabledState ( )
inlinevirtual

References isEnabled.

virtual void GenericProcessor::enabledState ( bool  t)
inlinevirtual

Reimplemented in SourceNode.

References isEnabled.

virtual void GenericProcessor::generateDefaultChannelNames ( StringArray &  )
virtual
virtual AudioSampleBuffer* GenericProcessor::getContinuousBuffer ( )
inlinevirtual

Reimplemented in ResamplingNode.

int GenericProcessor::getCurrentProgram ( )
inline
void GenericProcessor::getCurrentProgramStateInformation ( MemoryBlock &  destData)
inline
virtual float GenericProcessor::getDefaultBitVolts ( )
inlinevirtual

Reimplemented in SourceNode.

virtual int GenericProcessor::getDefaultNumOutputs ( )
inlinevirtual

Reimplemented in SignalGenerator, SourceNode, and EventNode.

virtual float GenericProcessor::getDefaultSampleRate ( )
inlinevirtual

Reimplemented in SourceNode.

GenericProcessor* GenericProcessor::getDestNode ( )
inline

References destNode.

virtual GenericEditor* GenericProcessor::getEditor ( )
inlinevirtual

References editor.

virtual MidiBuffer* GenericProcessor::getEventBuffer ( )
inlinevirtual
const String GenericProcessor::getInputChannelName ( int  channelIndex) const
inline
const String GenericProcessor::getName ( ) const
inline
virtual int GenericProcessor::getNextChannel ( bool  )
virtual
int GenericProcessor::getNodeId ( )
inline

References nodeId.

virtual int GenericProcessor::getNumInputs ( )
inlinevirtual
virtual int GenericProcessor::getNumOutputs ( )
inlinevirtual
int GenericProcessor::getNumParameters ( )
inline

References parameters.

int GenericProcessor::getNumPrograms ( )
inline
const String GenericProcessor::getOutputChannelName ( int  channelIndex) const
inline
float GenericProcessor::getParameter ( int  parameterIndex)
inline
Parameter& GenericProcessor::getParameterByName ( String  parameterName)
const String GenericProcessor::getParameterName ( int  parameterIndex)
Parameter& GenericProcessor::getParameterReference ( int  parameterIndex)
const String GenericProcessor::getParameterText ( int  parameterIndex)
const String GenericProcessor::getProgramName ( int  index)
inline
virtual float GenericProcessor::getSampleRate ( )
inlinevirtual
GenericProcessor* GenericProcessor::getSourceNode ( )
inline

References sourceNode.

int GenericProcessor::getStartChannel ( )
inline
void GenericProcessor::getStateInformation ( MemoryBlock &  destData)
inline
virtual void GenericProcessor::handleEvent ( int  eventType,
MidiMessage &  event 
)
inlinevirtual

Reimplemented in SpikeDisplayNode, and WiFiOutput.

bool GenericProcessor::hasEditor ( ) const
inline

Reimplemented in SourceNode, SignalGenerator, and FilterNode.

virtual bool GenericProcessor::isAudioOrRecordNode ( )
inlinevirtual

Reimplemented in RecordNode, and AudioNode.

bool GenericProcessor::isInputChannelStereoPair ( int  index) const
inline
virtual bool GenericProcessor::isMerger ( )
inlinevirtual

Reimplemented in Merger.

bool GenericProcessor::isMetaParameter ( int  parameterIndex)
inline
bool GenericProcessor::isOutputChannelStereoPair ( int  index) const
inline
bool GenericProcessor::isParameterAutomatable ( int  parameterIndex)
inline
virtual bool GenericProcessor::isReady ( )
inlinevirtual

Reimplemented in SourceNode.

References isEnabled.

virtual bool GenericProcessor::isSink ( )
inlinevirtual

Reimplemented in WiFiOutput, SpikeDisplayNode, and LfpDisplayNode.

virtual bool GenericProcessor::isSource ( )
inlinevirtual

Reimplemented in SourceNode, SignalGenerator, and EventNode.

virtual bool GenericProcessor::isSplitter ( )
inlinevirtual

Reimplemented in Splitter.

virtual void GenericProcessor::prepareToPlay ( double  sampleRate,
int  estimatedSamplesPerBlock 
)
virtual

Reimplemented in ResamplingNode.

virtual void GenericProcessor::process ( AudioSampleBuffer &  ,
MidiBuffer &  ,
int &   
)
pure virtual
bool GenericProcessor::producesMidi ( ) const
inline
virtual bool GenericProcessor::recordStatus ( int  chan)
virtual
void GenericProcessor::releaseResources ( )

Reimplemented in ResamplingNode.

void GenericProcessor::reset ( )
inline
virtual void GenericProcessor::resetConnections ( )
virtual

Reimplemented in RecordNode.

virtual void GenericProcessor::setCurrentChannel ( int  chan)
inlinevirtual

References currentChannel.

void GenericProcessor::setCurrentProgram ( int  index)
inline
void GenericProcessor::setCurrentProgramStateInformation ( const void *  data,
int  sizeInBytes 
)
inline
virtual void GenericProcessor::setDestNode ( GenericProcessor dn)
virtual
virtual void GenericProcessor::setMergerSourceNode ( GenericProcessor sn)
inlinevirtual

Reimplemented in Merger.

void GenericProcessor::setNodeId ( int  id)
inline

References nodeId.

virtual void GenericProcessor::setParameter ( int  parameterIndex,
float  newValue 
)
virtual
virtual void GenericProcessor::setPathToProcessor ( GenericProcessor p)
inlinevirtual

Reimplemented in Splitter.

virtual void GenericProcessor::setSourceNode ( GenericProcessor sn)
virtual
virtual void GenericProcessor::setSplitterDestNode ( GenericProcessor dn)
inlinevirtual

Reimplemented in Splitter.

void GenericProcessor::setStartChannel ( int  i)
inline
void GenericProcessor::setStateInformation ( const void *  data,
int  sizeInBytes 
)
inline
virtual bool GenericProcessor::stillHasSource ( )
inlinevirtual

Reimplemented in Merger.

virtual void GenericProcessor::switchIO ( int  )
inlinevirtual

Reimplemented in Splitter, and Merger.

virtual void GenericProcessor::switchIO ( )
inlinevirtual

Reimplemented in Splitter, and Merger.

virtual void GenericProcessor::update ( )
virtual
virtual void GenericProcessor::updateSettings ( )
inlinevirtual

Member Data Documentation

int GenericProcessor::currentChannel

Referenced by setCurrentChannel().

GenericProcessor* GenericProcessor::destNode

Referenced by getDestNode().

ScopedPointer<GenericEditor> GenericProcessor::editor

Referenced by getEditor().

bool GenericProcessor::isEnabled

Referenced by enable(), enabledState(), and isReady().

int GenericProcessor::loadOrder
int GenericProcessor::nextAvailableChannel
int GenericProcessor::nodeId

Referenced by getNodeId(), and setNodeId().

Parameter GenericProcessor::nullParam
StringArray GenericProcessor::parameterNames
Array<Parameter> GenericProcessor::parameters

Referenced by getNumParameters().

int GenericProcessor::saveOrder
ProcessorSettings GenericProcessor::settings
GenericProcessor* GenericProcessor::sourceNode

Referenced by getSourceNode().

bool GenericProcessor::wasConnected

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