CSIM: Readout Class Reference

Readout Class Reference

#include <readout.h>

Inheritance diagram for Readout:

Advancable ModelInput csimClass List of all members.

Detailed Description

Base class of all readouts.

This class implements readouts within the simulation. Readouts take the responses of the liquid and calculate a new function with these inputs. Readouts can be trained to approximate some target function. Readouts can be connected to physical models or feedback neurons for closed-loop simulations. Therefore the interface of readouts is similar to that of synapses. The output of a readout can be recorded.

Public Member Functions

Public Attributes

  • int enabled
    Flag: 0 ... readout disabled, 1 ... readout enabled [range=(0,1)];.
  • double offset
    Offset of output values.
  • double range
    Range of output values.

Protected Member Functions

  • int add (RecField *f)
    Add a new field to the recoder.

Protected Attributes

Static Protected Attributes

  • static double * m_response = 0
    Static working memory for filters and preprocessors.
  • static double * m_target = 0
    Static working memory for filters and preprocessors.
  • static int lReservedMemory = 0
    Length of the reserved memory.
  • static pthread_mutex_t mutex_temp_memory
    Mutex for controlling access to shared memory.
  • static int nReadouts = 0
    Number of readouts created.

Friends

Classes


Constructor & Destructor Documentation

Readout::~Readout void   ) 
 

Destructor: Frees the memory allocated by the readout.

Frees the memory.


Member Function Documentation

int Readout::advance void   )  [virtual]
 

Advances the readout.

Advances the readout

Implements Advancable.

int Readout::appendPreprocessor Preprocessor pp  ) 
 

Appends a new preprocessor at the end of the preprocessor list. The input will be processed by all preprocessors, in the sequence in which they are stored in the preprocessor list.

Parameters:
pp The new preprocessor.
Returns:
-1 if an error occured, 1 for success.

double * Readout::exportAlgorithm int *  rep_length  ) 
 

Exports a parameterized version of the current learning algorithm.

Parameters:
rep_length Length of the representation vector.
Returns:
A representation of the learning algorithm parameters.

double * Readout::exportPreprocessor int  ind,
int *  rep_length
 

Exports a parameterized version of one preprocessor.

Parameters:
ind Index of the preprocessor in the preprocessor list.
rep_length Length of the representation vector.
Returns:
A representation of the preprocessor parameters.

string Readout::getAlgorithmFormatDescription  ) 
 

Returns a string description of the input/output format of the current learning algorithm.

Returns:
A string describing the input/output format of the current learning algorithm.

int Readout::getNumberPreprocessors  ) 
 

Returns the length of the preprocessor list.

Returns:
The length of the preprocessor list.

string Readout::getPreprocessorFormatDescription int  ind  ) 
 

Returns a string description of the input/output format of one preprocessor.

Parameters:
ind Index of the preprocessor in the preprocessor list.
Returns:
A string describing the input/output format of the preprocessor.

void Readout::getPreprocessorIDs uint32 idx  ) 
 

Get the Ids of the Preprocessors.

Get the Ids of the Preprocessors.

Parameters:
idx Pointer to the memory where to store the Ids.

int Readout::importAlgorithm double *  rep,
int  rep_length
 

Imports a parameterized version of the current learning algorithm.

Parameters:
rep Representation of the learning algorithm parameters.
rep_length Length of the representation vector.
Returns:
-1 if an error occured, 1 for success.

int Readout::importPreprocessor int  ind,
double *  rep,
int  rep_length
 

Imports a parameterized version of one preprocessor.

Parameters:
ind Index of the preprocessor in the preprocessor list.
rep Representation of the preprocessor parameters.
rep_length Length of the representation vector.
Returns:
-1 if an error occured, 1 for success.

int Readout::insertPreprocessor Preprocessor pp,
int  position
 

Inserts a new preprocessor at the specified position within the preprocessor list. The input will be processed by all preprocessors, in the sequence in which they are stored in the preprocessor list.

Parameters:
pp The new preprocessor.
position The position at which the new preprocessor should be inserted.
Returns:
-1 if the position is invalid, 1 for success.

int Readout::prependPreprocessor Preprocessor pp  ) 
 

Adds a new preprocessor at the beginning of the preprocessor list. The input will be processed by all preprocessors, in the sequence in which they are stored in the preprocessor list.

Parameters:
pp The new preprocessor.
Returns:
-1 if an error occured, 1 for success.

void Readout::reset  )  [virtual]
 

Resets the state of the readout and all filters, preprocessors and algorithms.

Implements Advancable.

void Readout::setAnalogFilter AnalogFilter af  ) 
 

Sets a new filter for analog inputs.

Parameters:
af Pointer to new analog filter. If NULL, analog signals will not be filtered.

int Readout::setLearningAlgorithm Algorithm learner  ) 
 

Sets a new learning algorithm. This algorithm computes the output of the readout.

Parameters:
learner A pointer to the algorithm object.
Returns:
-1 if an error occured, 1 for success.

void Readout::setRange double  lower_bound,
double  upper_bound
 

Set the range of output values.

Parameters:
lower_bound Lower bound for output values.
upper_bound Upper bound for output values.

void Readout::setSpikeFilter SpikeFilter sf  ) 
 

Sets a new filter for spiking inputs.

Parameters:
sf Pointer to new spike-filter. If NULL, spiking signals will not be filtered.


 
(C) 2003, Thomas Natschläger last modified 07/10/2006