diff --git a/README.md b/README.md index b2f41d6e2afa5531e4533394471a0891c15a8dbc..868921ee765a967947304f878cdc8ed06f12d64f 100644 --- a/README.md +++ b/README.md @@ -32,6 +32,35 @@ Other compilers versions might work as well. cmake -PYTHON_ENABLE_MODULE__pyconsumer=True cmake -PYTHON_ENABLE_MODULE__pynesci=True - or setting those options to true in the CMake GUI + +# API +## Consumer +Every class is inside the namespace `nesci::consumer`. +**SpikeDetectorDataView** +```c++ +class SpikeDetectorDataView { + conduit::float64_array GetTimesteps() const; + conduit::uint64_array GetNeuronIds() const; +}; +``` +SpikeDetectorDataView gives access to two arrays with the same number of entries. The length of these arrays represent the number of spikes that are described in the dataset. So, GetTimesteps()[i] represents the simulation time and GetNeuronIds()[i] represents the neuron id of the `i`th spike described in the dataset. *The data is not guaranteed to be sorted in any way.* + +**NestMultimeterDataView** +```c++ +class NestMultimeterDataView { + double GetTimestep() const; + conduit::uint64_array GetNeuronIds() const; + std::vector<std::string> GetIntegerParameterNames() const; + std::vector<std::string> GetFloatingPointParameterNames() const; + conduit::int64_array GetIntegerParameterValues( + const std::string& parameter + ) const; + conduit::float64_array GetFloatingPointParameterValues( + const std::string& parameter + ) const; +}; +``` +NestMultimeterDataView gives access to the data recorded by a nest multimeter. One dataset describes the values of multiple parameters of multiple neurons *for a sigle timestep*. # Building nesci