• Main Page
  • Classes
  • Files
  • File List

NeurSamplingNetwork.h

00001 #ifndef NEURSAMPLINGNETWORK_H_
00002 #define NEURSAMPLINGNETWORK_H_
00003 
00004 #include "EvSimObject.h"
00005 #include "Synapse.h"
00006 #include "CompositeSynapse.h"
00007 #include "EvSimNetwork.h"
00008 #include "evesim_hash.h"
00009 
00010 class NeurSamplingNetwork: public EvSimNetwork {
00011 public:
00012 
00013         NeurSamplingNetwork(SimParameters sim_params = SimParameters()) : EvSimNetwork(sim_params)
00014         {};
00015 
00016         virtual ~NeurSamplingNetwork();
00017 
00018         EvSimObject::ID associateSpikeResponse(EvSimObject::ID id, const EvSimObjectFactory &resp_factory, Time delay = 0);
00019 
00020         EvSimObject::ID getAssociatedSpikeResponse(EvSimObject::ID id);
00021 
00022         using EvSimNetwork::connect;
00023 
00024         EvSimObject::IDVector connectAll2All(EvSimObject::IDVector src_vec, EvSimObject::IDVector dest_vec,
00025                         const SynapseFactory& syn_factory, EvSimObject::IDVector &psr_id_vec, EvSimObject::IDVector &bap_trace_id_vec, Time delay = 0);
00026 
00027         EvSimObject::IDVector connectAll2All(EvSimObject::IDVector src_vec, EvSimObject::IDVector dest_vec,
00028                                                                                                                                                         const SynapseFactory& syn_factory);
00029 
00030         EvSimObject::ID connect(EvSimObject::ID src_id, EvSimObject::ID dest_id,
00031                                                         const SynapseFactory& syn_factory, EvSimObject::ID &psr_id, EvSimObject::ID &bap_trace_id, Time delay = 0);
00032 
00033         EvSimObject::ID connect(EvSimObject::ID src_id, EvSimObject::ID dest_id,
00034                                      const SynapseFactory& syn_factory, Time delay = 0);
00035 
00036 
00037 protected:
00038         typedef hash_map< EvSimObject::ID , EvSimObject::ID, evesim::hash<EvSimObject::ID> > AssociatedSpikeResponsesMapType;
00039 
00040          AssociatedSpikeResponsesMapType assoc_spike_resp;
00041 
00042          SpikeResponse * createNewPostSynResponse(const SynapseFactory &syn_factory, EvSimObject::ID & psr_id);
00043          SpikeResponse * createNewBackpropAPResponse(const SynapseFactory &syn_factory, EvSimObject::ID & bap_trace_id);
00044 
00045 };
00046 
00047 #endif /* NEURSAMPLINGNETWORK_H_ */

Generated on Wed Sep 18 2013 11:25:40 for NEVESIM by  doxygen 1.7.1