|
| std::shared_ptr< Element > | clone () const override |
| |
| | GaussKernel2D (const ElementCommonParameters &elementCommonParameters, const GaussKernel2DParameters ¶meters) |
| |
| GaussKernel2DParameters | getParameters () const |
| |
| void | init () override |
| | Initialize the element (called once before the simulation loop).
|
| |
| void | setParameters (const GaussKernel2DParameters ¶meters) |
| |
| void | step (double t, double deltaT) override |
| | Advance the element by one time step.
|
| |
| std::string | toString () const override |
| |
| std::vector< int > | getExtIndex () const |
| | Return the extended index used for circular convolution.
|
| |
| std::array< int, 2 > | getKernelRange () const |
| | Return the non-negligible index range [min, max] of the kernel.
|
| |
| | Kernel (const ElementCommonParameters &elementCommonParameters) |
| |
| | ~Kernel () override=default |
| |
| virtual void | addInput (const std::shared_ptr< Element > &inputElement, const std::string &inputComponent="output") |
| | Register inputElement as an upstream source for this element.
|
| |
| void | buildInputCache () |
| | Cache raw pointers to input component data. Call after all element init()s complete.
|
| |
| virtual void | changeDimensions (const ElementDimensions &newDimensions) |
| | Resize all components to newDimensions and re-initialize.
|
| |
| void | close () |
| |
| | Element (const ElementCommonParameters ¶meters) |
| | Construct an element with the given common parameters.
|
| |
| std::vector< double > | getComponent (const std::string &componentName) |
| | Return a copy of the named component vector.
|
| |
| std::vector< std::string > | getComponentList () const |
| |
| std::vector< double > * | getComponentPtr (const std::string &componentName) |
| |
| const std::unordered_map< std::string, std::vector< double > > * | getComponents () const |
| | Return a read-only pointer to the full components map.
|
| |
| ElementCommonParameters | getElementCommonParameters () const |
| |
| std::vector< std::shared_ptr< Element > > | getInputs () |
| |
| std::unordered_map< std::shared_ptr< Element >, std::string > | getInputsAndComponents () |
| | Return all inputs mapped to the component name they expose.
|
| |
| ElementLabel | getLabel () const |
| |
| int | getMaxSpatialDimension () const |
| |
| std::vector< std::shared_ptr< Element > > | getOutputs () |
| |
| int | getSize () const |
| | Return the number of spatial samples (size = round(x_max / d_x)).
|
| |
| double | getStepSize () const |
| | Return the spatial resolution (d_x).
|
| |
| int | getUniqueIdentifier () const |
| |
| std::string | getUniqueName () const |
| |
| bool | hasInput () const |
| |
| bool | hasInput (const std::string &inputElementName, const std::string &inputComponent) |
| |
| bool | hasInput (int inputElementId, const std::string &inputComponent) |
| |
| bool | hasOutput () const |
| |
| bool | hasOutput (const std::string &outputElementName, const std::string &outputComponent) |
| |
| bool | hasOutput (int outputElementId, const std::string &outputComponent) |
| |
| void | print () const |
| |
| void | removeInput (const std::string &inputElementId) |
| |
| void | removeInput (int uniqueId) |
| |
| void | removeInputs () |
| |
| void | removeOutput (const std::string &outputElementId) |
| | Deregister this element as an input of outputElementId.
|
| |
| void | removeOutput (int uniqueId) |
| | Deregister this element as an input of the element with uniqueId.
|
| |
| void | removeOutputs () |
| |
| void | setUniqueName (const std::string &name) |
| |
| void | updateInput () |
| | Pull data from all registered input elements into this element's components.
|
| |
| virtual | ~Element ()=default |
| |
|
| int | cutOfFactor |
| | Controls how far from the centre the kernel is truncated.
|
| |
| std::vector< int > | extIndex |
| | Extended index array for circular (toroidal) convolution.
|
| |
| double | fullSum |
| | Spatial integral of the kernel (used for global inhibition baseline).
|
| |
| std::array< int, 2 > | kernelRange |
| | [min, max] index range of the non-negligible kernel support.
|
| |
| ElementCommonParameters | commonParameters |
| | Name, label, and spatial dimensions.
|
| |
| std::unordered_map< std::string, std::vector< double > > | components |
| | Named data arrays (e.g. "output").
|
| |
| std::unordered_map< std::shared_ptr< Element >, std::string > | inputs |
| | Upstream elements and the component they expose.
|
| |
| std::unordered_map< std::shared_ptr< Element >, std::string > | outputs |
| | Downstream elements that read this element's output.
|
| |