Auditory Relacs Plugins
0.9.8
|
#include <singlestimulus.h>
Public Slots | |
virtual void | notifyDialog (const Options &opt) |
![]() | |
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) |
![]() | |
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 OptWidget * | dialogOptions (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) |
![]() | |
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) |
![]() | |
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) |
![]() | |
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 |
![]() | |
Options | DialogOptions |
Additional Inherited Members | |
![]() | |
enum | Action |
![]() | |
void | dialogAccepted (void) |
void | dialogAction (int r) |
void | dialogClosed (int r) |
![]() | |
static void | setConfigureClasses (ConfigureClasses *cfg) |
![]() | |
void | notificationFromDialog (const Parameter &p) |
virtual void | dClosed (int r) |
virtual void | hClosed (int r) |
![]() | |
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 const int | MaxTraces |
[RePro] Output of a single stimulus stored in a file.
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
- searchuserate=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
stimulistoremode=session:
Save stimuli in (string
)storepath=
: Save stimuli in custom directory (string
)storelevel=all:
Save (string
)
|
protected |
|
protected |
|
protected |
|
protected |
SingleStimulus | ( | void | ) |
Constructor.
References SingleStimulus::Amplitude, SingleStimulus::CarrierFreq, SingleStimulus::Duration, SingleStimulus::Intensity, MultiPlot::lock(), SingleStimulus::P, SingleStimulus::Repeats, MultiPlot::resize(), MultiPlot::setCommonXRange(), SingleStimulus::Sigma1, SingleStimulus::Sigma2, SingleStimulus::SkipWin, SingleStimulus::SP, SingleStimulus::Stack, and MultiPlot::unlock().
~SingleStimulus | ( | void | ) |
Destructor.
|
virtual |
Reimplemented from ConfigClass.
References SingleStimulus::VUnit.
|
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().
References TableKey::addNumber(), Str::lower(), TableKey::saveKey(), Str::text(), and SingleStimulus::VUnit.
Referenced by SingleStimulus::main().
void saveTrace | ( | ofstream & | tf, |
TableKey & | tracekey, | ||
int | index, | ||
const SampleDataF & | voltage | ||
) |
References SampleData< T >::pos(), TableKey::save(), and SampleData< T >::size().
Referenced by SingleStimulus::main().
void saveMeanTrace | ( | Options & | header, |
const SampleDataF & | meanvoltage | ||
) |
References TableKey::addNumber(), Str::lower(), TableKey::saveKey(), EventList::saveText(), and Str::text().
Referenced by SingleStimulus::main().
void saveRate | ( | Options & | header, |
const SampleDataD & | rate1, | ||
const SampleDataD & | rate2 | ||
) |
References TableKey::addNumber(), SingleStimulus::AMDB, OutData::interpolate(), Str::lower(), SampleData< T >::pos(), OutData::rangeBack(), TableKey::save(), TableKey::saveKey(), SingleStimulus::Sigma1, SingleStimulus::Sigma2, SampleData< T >::size(), and Str::text().
Referenced by SingleStimulus::main().
void plot | ( | const EventList & | spikes, |
const SampleDataD & | rate1, | ||
const SampleDataD & | rate2, | ||
const SampleDataF & | voltage, | ||
const SampleDataF & | meanvoltage | ||
) |
Plot data.
References SingleStimulus::AMDB, MultiPlot::clear(), MultiPlot::draw(), SingleStimulus::Duration, SingleStimulus::Envelope, SingleStimulus::Intensity, MultiPlot::lock(), OutData::max(), SingleStimulus::MeanRate, OutData::min(), SingleStimulus::P, SingleStimulus::PeakAmplitude, SingleStimulus::Ramp, SingleStimulus::Repeats, EventList::size(), SingleStimulus::SkipWin, MultiPlot::unlock(), SingleStimulus::VUnit, SingleStimulus::Wave, and SingleStimulus::WaveType.
Referenced by SingleStimulus::main().
void analyze | ( | EventList & | spikes, |
SampleDataD & | rate1, | ||
SampleDataD & | rate2, | ||
double | before, | ||
double | after | ||
) |
Analyze data.
References EventData::addRate(), EventList::back(), SingleStimulus::Duration, SingleStimulus::MeanRate, EventList::push(), EventList::rate(), SingleStimulus::Sigma1, SingleStimulus::Sigma2, EventList::size(), and SingleStimulus::SkipWin.
Referenced by SingleStimulus::main().
|
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.
|
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().
|
protected |
|
protected |
Referenced by SingleStimulus::createStimulus(), SingleStimulus::main(), and SingleStimulus::SingleStimulus().
|
protected |
Referenced by SingleStimulus::createStimulus(), SingleStimulus::main(), and SingleStimulus::SingleStimulus().
|
protected |
Referenced by SingleStimulus::createStimulus(), SingleStimulus::main(), and SingleStimulus::plot().
|
protected |
Referenced by SingleStimulus::createStimulus(), and SingleStimulus::main().
|
protected |
Referenced by SingleStimulus::createStimulus(), and SingleStimulus::main().
|
protected |
Referenced by SingleStimulus::createStimulus(), and SingleStimulus::main().
|
protected |
Referenced by SingleStimulus::createStimulus(), SingleStimulus::main(), and SingleStimulus::plot().
|
protected |
Referenced by SingleStimulus::createStimulus(), and SingleStimulus::main().
|
protected |
Referenced by SingleStimulus::createStimulus(), and SingleStimulus::main().
|
protected |
Referenced by SingleStimulus::createStimulus(), and SingleStimulus::main().
|
protected |
Referenced by SingleStimulus::createStimulus(), and SingleStimulus::main().
|
protected |
Referenced by SingleStimulus::createStimulus(), and SingleStimulus::main().
|
protected |
Referenced by SingleStimulus::createStimulus(), SingleStimulus::main(), and SingleStimulus::plot().
|
protected |
Referenced by SingleStimulus::main(), SingleStimulus::plot(), and SingleStimulus::SingleStimulus().
|
protected |
|
protected |
Referenced by SingleStimulus::createStimulus(), and SingleStimulus::main().
|
protected |
Referenced by SingleStimulus::main(), SingleStimulus::plot(), and SingleStimulus::SingleStimulus().
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
Referenced by SingleStimulus::createStimulus(), and SingleStimulus::main().
|
protected |
Referenced by SingleStimulus::createStimulus(), and SingleStimulus::main().
|
protected |
Referenced by SingleStimulus::createStimulus(), and SingleStimulus::main().
|
protected |
Referenced by SingleStimulus::createStimulus(), and SingleStimulus::main().
|
protected |
|
protected |
Referenced by SingleStimulus::analyze(), SingleStimulus::main(), and SingleStimulus::plot().
|
protected |
|
protected |
|
protected |
|
protected |
Referenced by SingleStimulus::customEvent(), SingleStimulus::main(), and SingleStimulus::SingleStimulus().
|
protected |
|
protected |
Referenced by SingleStimulus::customEvent(), and SingleStimulus::SingleStimulus().