Auditory Relacs Plugins  0.9.8
Public Slots | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | List of all members
SingleStimulus Class Reference

#include <singlestimulus.h>

Inheritance diagram for SingleStimulus:
Inheritance graph
[legend]
Collaboration diagram for SingleStimulus:
Collaboration graph
[legend]

Public Slots

virtual void notifyDialog (const Options &opt)
 
- Public Slots inherited from ConfigDialog
virtual void dialog (void)
 
virtual void help (void)
 
virtual void notifyDialog (const Options &opt)
 

Public Member Functions

 SingleStimulus (void)
 
 ~SingleStimulus (void)
 
virtual void preConfig (void)
 
virtual int main (void)
 
void openTraceFile (ofstream &tf, TableKey &tracekey, const Options &header)
 
void saveTrace (ofstream &tf, TableKey &tracekey, int index, const SampleDataF &voltage)
 
void saveMeanTrace (Options &header, const SampleDataF &meanvoltage)
 
void saveSpikes (Options &header, const EventList &spikes)
 
void saveRate (Options &header, const SampleDataD &rate1, const SampleDataD &rate2)
 
void plot (const EventList &spikes, const SampleDataD &rate1, const SampleDataD &rate2, const SampleDataF &voltage, const SampleDataF &meanvoltage)
 
void analyze (EventList &spikes, SampleDataD &rate1, SampleDataD &rate2, double before, double after)
 
- Public Member Functions inherited from ConfigDialog
 ConfigDialog (const string &configident="", int configgroup=0, const string &name="", const string &author="", const string &version="", const string &date=__DATE__)
 
virtual ~ConfigDialog (void)
 
string name (void) const
 
virtual void setName (const string &name)
 
string author (void) const
 
virtual void setAuthor (const string &author)
 
string version (void) const
 
virtual void setVersion (const string &version)
 
string date (void) const
 
virtual void setDate (const string &date)
 
virtual OptWidgetdialogOptions (OptDialog *od, string *tabhotkeys=0)
 
virtual void dialogButtons (OptDialog *od)
 
virtual void dialogEmptyMessage (OptDialog *od)
 
int dialogSelectMask (void) const
 
void setDialogSelectMask (int mask)
 
void addDialogSelectMask (int mask)
 
int dialogReadOnlyMask (void) const
 
void setDialogReadOnlyMask (int mask)
 
void addDialogReadOnlyMask (int mask)
 
int dialogStyle (void) const
 
void setDialogStyle (int style)
 
void addDialogStyle (int style)
 
string dialogCaption (void) const
 
void setDialogCaption (const string &caption)
 
bool dialogHeader (void) const
 
void setDialogHeader (bool d)
 
string headerBackgroundColor (void) const
 
void setHeaderBackgroundColor (const string &color)
 
string headerForegroundColor (void) const
 
void setHeaderForegroundColor (const string &color)
 
string headerImageFile (void) const
 
void setHeaderImageFile (const string &file)
 
virtual void dialogHeaderWidget (OptDialog *od)
 
bool dialogHelp (void) const
 
void setDialogHelp (bool d)
 
string helpCaption (void) const
 
void setHelpCaption (const string &caption)
 
string helpPath (int inx=0) const
 
int helpPathes (void) const
 
void clearHelpPathes (void)
 
void setHelpPath (const string &path)
 
void addHelpPath (const string &path)
 
virtual string helpFileName (void) const
 
bool dialogOpen (void) const
 
bool helpOpen (void) const
 
QWidget * mainWidget (void)
 
virtual void setMainWidget (QWidget *widget)
 
void lock () const
 
void unlock () const
 
bool tryLock (int timeout=1)
 
QMutex * mutex (void)
 
- Public Member Functions inherited from ConfigClass
 ConfigClass (const string &ident, int group=0, int mode=0xffff, int selectmask=0)
 
 ConfigClass (const ConfigClass &C)
 
virtual ~ConfigClass (void)
 
const string & configIdent (void) const
 
void setConfigIdent (const string &ident)
 
int configGroup (void) const
 
void setConfigGroup (int group)
 
int configMode (void) const
 
void setConfigMode (int mode)
 
void addConfigMode (int mode)
 
void delConfigMode (int mode)
 
int configSelectMask (void) const
 
void setConfigSelectMask (int mask)
 
void addConfig (void)
 
void readConfig (void)
 
virtual void readConfig (StrQueue &sq)
 
virtual void saveConfig (ofstream &str)
 
virtual int configSize (void) const
 
virtual void config (void)
 
- Public Member Functions inherited from StandardTraces
 StandardTraces (void)
 

Protected Types

enum  WaveTypes { Wave =0, Envelope, AM }
 
enum  WaveForms {
  File =0, Const, Sine, Rectangular,
  Triangular, Sawup, Sawdown, Whitenoise,
  OUnoise
}
 
enum  StoreModes { SessionPath, ReProPath, CustomPath }
 
enum  StoreLevels {
  All, AMGenerated, Generated, Noise,
  None
}
 

Protected Member Functions

int createStimulus (OutData &signal, const Str &file, double &duration, bool stoream)
 
void customEvent (QEvent *qce)
 
- Protected Member Functions inherited from ConfigDialog
void setDialogOpen (bool open=true)
 
void setHelpOpen (bool open=true)
 

Protected Attributes

double CarrierFreq
 
double Amplitude
 
double PeakAmplitude
 
double PeakAmplitudeFac
 
bool StimScale
 
double StimHighCut
 
WaveTypes WaveType
 
WaveForms WaveForm
 
double Frequency
 
double PulseDuration
 
double DutyCycle
 
int Seed
 
double Ramp
 
double Intensity
 
double Duration
 
int Side
 
int Repeats
 
double SkipWin
 
double Sigma1
 
double Sigma2
 
OutData Signal
 
string StimulusLabel
 
StoreLevels StoreLevel
 
Str StorePath
 
Str StoreFile
 
OutData AMDB
 
double MeanRate
 
SampleDataD Rate1
 
SampleDataD Rate2
 
string VUnit
 
MultiPlot SP
 
MultiPlot P
 
QStackedLayout * Stack
 
- Protected Attributes inherited from ConfigDialog
Options DialogOptions
 

Additional Inherited Members

- Public Types inherited from ConfigClass
enum  Action
 
- Signals inherited from ConfigDialog
void dialogAccepted (void)
 
void dialogAction (int r)
 
void dialogClosed (int r)
 
- Static Public Member Functions inherited from ConfigClass
static void setConfigureClasses (ConfigureClasses *cfg)
 
- Protected Slots inherited from ConfigDialog
void notificationFromDialog (const Parameter &p)
 
virtual void dClosed (int r)
 
virtual void hClosed (int r)
 
- Static Protected Member Functions inherited from StandardTraces
static void clearIndices (int *traceindices, int n=-1)
 
static void initStandardTraces (const InList &data, int *ntraces, int *traceindices, const string *names, string &namelist, bool alpha=false)
 
static void initStandardEventTraces (const InList &data, const EventList &events, int *ntraces, int *traceindices, int *eventindices, const string *tracenames, const string *eventnames, string &tracenamelist, string &eventnamelist, bool alpha=false)
 
static void initStandardOutputs (const RELACSPlugin *rp, int *ntraces, int *traceindices, const string *names, string &namelist, bool alpha=false)
 
- Static Protected Attributes inherited from StandardTraces
static const int MaxTraces
 

Detailed Description

[RePro] Output of a single stimulus stored in a file.

Version
1.6 (Jul 11, 2015)
Author
Jan Benda
Options
  • Waveform
    • type=Wave: Type of stimulus (string)
    • waveform=From file: Stimulus waveform (string)
    • stimfile=: Stimulus file (string)
    • stimscale=false: Scale stimulus to maximum amplitudes (boolean)
    • stimhighcut=0Hz: Cutoff frequency of high-pass filter applied to stimulus (number)
    • stimampl=0: Amplitude factor (standard deviation) of stimulus file (number)
    • amplitude=1dB: Amplitude of stimulus (number)
    • freqsel=frequency: Specify (string)
    • freq=10Hz: Frequency of waveform (number)
    • period=100ms: Period of waveform (number)
    • numperiods=1: Number of periods (number)
    • pulsesel=pulse duration: Specify (string)
    • pulseduration=10ms: Pulse duration (number)
    • dutycycle=50%: Duty-cycle (number)
    • seed=0: Seed for random number generation (integer)
    • duration=0ms: Maximum duration of stimulus (number)
    • ramp=2ms: Ramp of stimulus (number)
  • Stimulus
    • intensity=50dB: Stimulus intensity (number)
    • intensitybase=SPL: Stimulus intensity relative to (string)
    • repeats=10times: Number of stimulus presentations (number)
    • pause=1000ms: Duration of pause between stimuli (number)
    • before=100ms: Time before stimulus to be analyzed (number)
    • after=100ms: Time after stimulus to be analyzed (number)
    • side=left: Speaker (string)
    • Carrier
      • carrierfreq=5kHz: Carrier frequency (number)
      • usebestfreq=true: Relative to the cell's best frequency (boolean)
  • Intensity - search
    • userate=true: Search intensity for target firing rate (boolean)
    • rate=100Hz: Target firing rate (number)
    • ratetol=5Hz: Tolerance for target firing rate (number)
    • intensitystep=8dB: Initial intensity step (number)
    • searchrepeats=2times: Number of search stimulus presentations (number)
    • silentrate=0Hz: Ignore response below (number)
    • maxsilent=1: Number of stimulus presentations if response is below silentrate (integer)
    • skippause=true: Skip pause if response is below silentrate (boolean)
    • maxsearch=1intensities: Stop search if response does not change for more than (integer)
    • method=Bisect: Method (string)
    • minslope=4Hz/dB: Minimum slope required for interpolation (number)
    • searchduration=0ms: Maximum duration of stimulus (number)
    • searchpause=0ms: Duration of pause between stimuli (number)
  • Analysis
    • skipwin=100ms: Initial portion of stimulus not used for analysis (number)
    • sigma1=2ms: Standard deviation of rate smoothing kernel 1 (number)
    • sigma2=20ms: Standard deviation of rate smoothing kernel 2 (number)
    • storevoltage=false: Save voltage trace (boolean)
    • plot=Current voltage trace: Plot shows (string)
    • adjust=true: Adjust input gain (boolean)
    • Save stimuli
      • storemode=session: Save stimuli in (string)
      • storepath=: Save stimuli in custom directory (string)
      • storelevel=all: Save (string)

Member Enumeration Documentation

enum WaveTypes
protected
Enumerator
Wave 
Envelope 
AM 
enum WaveForms
protected
Enumerator
File 
Const 
Sine 
Rectangular 
Triangular 
Sawup 
Sawdown 
Whitenoise 
OUnoise 
enum StoreModes
protected
Enumerator
SessionPath 
ReProPath 
CustomPath 
enum StoreLevels
protected
Enumerator
All 
AMGenerated 
Generated 
Noise 
None 

Constructor & Destructor Documentation

SingleStimulus ( void  )
~SingleStimulus ( void  )

Destructor.

Member Function Documentation

void preConfig ( void  )
virtual

Reimplemented from ConfigClass.

References SingleStimulus::VUnit.

int main ( void  )
virtual

Implements RePro.

References SingleStimulus::AM, SingleStimulus::AMDB, SingleStimulus::Amplitude, SingleStimulus::analyze(), EventList::back(), SingleStimulus::CarrierFreq, MultiPlot::clear(), MultiPlot::clearPlots(), SingleStimulus::createStimulus(), SingleStimulus::CustomPath, MultiPlot::draw(), SingleStimulus::Duration, SingleStimulus::DutyCycle, Str::empty(), Map< T >::empty(), DaqError::error(), DaqError::errorText(), Session::fICurve(), SingleStimulus::Frequency, Map< T >::insert(), OutData::intensity(), SingleStimulus::Intensity, MultiPlot::lock(), log10(), SingleStimulus::MeanRate, SingleStimulus::openTraceFile(), DaqError::overflow(), SingleStimulus::P, SingleStimulus::PeakAmplitude, SingleStimulus::PeakAmplitudeFac, SingleStimulus::plot(), Str::provideSlash(), SingleStimulus::PulseDuration, EventList::push(), Map< T >::push(), SingleStimulus::Ramp, EventData::rate(), EventList::rate(), SingleStimulus::Repeats, SingleStimulus::ReProPath, Map< T >::reserve(), SampleData< T >::resize(), SingleStimulus::saveMeanTrace(), SingleStimulus::saveRate(), SingleStimulus::saveSpikes(), SingleStimulus::saveTrace(), SingleStimulus::Seed, SingleStimulus::SessionPath, MultiPlot::setDrawBackground(), OutData::setIntensity(), SingleStimulus::Side, SingleStimulus::Sigma1, SingleStimulus::Sigma2, EventList::size(), SampleData< T >::size(), Map< T >::size(), SingleStimulus::SkipWin, SingleStimulus::SP, Session::ssFICurve(), SingleStimulus::StimHighCut, SingleStimulus::StimScale, SingleStimulus::StimulusLabel, SingleStimulus::StoreFile, SingleStimulus::StoreLevel, SingleStimulus::StorePath, DaqError::success(), Session::threshCurve(), DaqError::underflow(), MultiPlot::unlock(), SingleStimulus::VUnit, SingleStimulus::WaveForm, SingleStimulus::WaveType, Map< T >::x(), and Map< T >::y().

void openTraceFile ( ofstream &  tf,
TableKey tracekey,
const Options header 
)
void saveTrace ( ofstream &  tf,
TableKey tracekey,
int  index,
const SampleDataF voltage 
)
void saveMeanTrace ( Options header,
const SampleDataF meanvoltage 
)
void saveSpikes ( Options header,
const EventList spikes 
)
void saveRate ( Options header,
const SampleDataD rate1,
const SampleDataD rate2 
)
void plot ( const EventList spikes,
const SampleDataD rate1,
const SampleDataD rate2,
const SampleDataF voltage,
const SampleDataF meanvoltage 
)
void analyze ( EventList spikes,
SampleDataD rate1,
SampleDataD rate2,
double  before,
double  after 
)
void notifyDialog ( const Options opt)
virtualslot

This slot is called whenever a value in the dialog is changed. The values of all the options opt from the dialog are set to the current values visible in the dialog. The changed value has the Parameter::changedFlag() set.

int createStimulus ( OutData signal,
const Str file,
double &  duration,
bool  stoream 
)
protected

References SingleStimulus::All, SingleStimulus::AM, SingleStimulus::AMDB, SingleStimulus::AMGenerated, SingleStimulus::Amplitude, SingleStimulus::CarrierFreq, OutData::clear(), SingleStimulus::Duration, SingleStimulus::DutyCycle, OutData::empty(), SingleStimulus::Envelope, SingleStimulus::File, OutData::fill(), OutData::fixedSampleRate(), SingleStimulus::Frequency, SingleStimulus::Generated, OutData::indices(), OutData::interpolate(), OutData::length(), OutData::load(), Str::longName(), maxAbs(), OutData::maxSampleRate(), relacs::min(), OutData::minSampleInterval(), SingleStimulus::Noise, OutData::noiseWave(), Str::notdir(), SingleStimulus::OUnoise, OutData::ouNoiseWave(), SingleStimulus::PeakAmplitude, SingleStimulus::PeakAmplitudeFac, pow(), SingleStimulus::PulseDuration, OutData::pulseWave(), OutData::ramp(), SingleStimulus::Ramp, OutData::rectangleWave(), SingleStimulus::Rectangular, OutData::resize(), OutData::sampleRate(), OutData::save(), SingleStimulus::Sawdown, OutData::sawDownWave(), SingleStimulus::Sawup, OutData::sawUpWave(), SingleStimulus::Seed, OutData::setCarrierFreq(), OutData::setIdent(), OutData::setTrace(), SingleStimulus::Side, OutData::sineWave(), OutData::size(), SingleStimulus::SkipWin, sqrt(), OutData::stepsize(), SingleStimulus::StimHighCut, SingleStimulus::StimScale, SingleStimulus::StimulusLabel, SingleStimulus::StoreFile, SingleStimulus::StoreLevel, SingleStimulus::StorePath, translate(), OutData::triangleWave(), SingleStimulus::Triangular, SingleStimulus::WaveForm, SingleStimulus::WaveType, and SingleStimulus::Whitenoise.

Referenced by SingleStimulus::main().

void customEvent ( QEvent *  qce)
protected

Member Data Documentation

double CarrierFreq
protected
double Amplitude
protected
double PeakAmplitude
protected
double PeakAmplitudeFac
protected
bool StimScale
protected
double StimHighCut
protected
WaveTypes WaveType
protected
WaveForms WaveForm
protected
double Frequency
protected
double PulseDuration
protected
double DutyCycle
protected
int Seed
protected
double Ramp
protected
double Intensity
protected
double Duration
protected
int Side
protected
int Repeats
protected
double SkipWin
protected
double Sigma1
protected
double Sigma2
protected
OutData Signal
protected
string StimulusLabel
protected
StoreLevels StoreLevel
protected
Str StorePath
protected
Str StoreFile
protected
OutData AMDB
protected
double MeanRate
protected
SampleDataD Rate1
protected
SampleDataD Rate2
protected
string VUnit
protected
MultiPlot SP
protected
MultiPlot P
protected
QStackedLayout* Stack
protected

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