#pragma once #include #include #include #include #include #include #include namespace knp_gpu_experiment { using Neuron = knp::neuron_traits::SynapticResourceSTDPAltAILIFNeuron; using Synapse = knp::synapse_traits::SynapticResourceSTDPDeltaSynapse; using Population = knp::core::Population; using Projections = std::vector>>; using Reference = void (*)(Population&, Projections&, const knp::core::messaging::SpikeMessage&, knp::core::Step); void train(Population&, Projections&, const knp::core::messaging::SpikeMessage&, knp::core::Step, Reference); void flush(); void clear(); }