WiringMethod Class Reference

Interface for connecting populations of SimObject's. More...

#include <WiringMethod.h>

Inheritance diagram for WiringMethod:

Inheritance graph
[legend]
Collaboration diagram for WiringMethod:

Collaboration graph
[legend]

List of all members.

Public Types

typedef shared_ptr< vector
< pair< SimObject::ID,
SimObject::ID > > > 
ConnectPairsVector

Public Member Functions

 WiringMethod (SimNetwork *net)
 New WiringMethod which belongs to the given SimNetwork.
 WiringMethod (SimNetwork &net)
 New WiringMethod which belongs to the given SimNetwork.
 WiringMethod ()
 New WiringMethod which belongs to NO SimNetwork.
void setNetwork (SimNetwork *net)
 Set the associated SimNetwork.
virtual ~WiringMethod ()
virtual unsigned connect (const SimObjectPopulation &source, const SimObjectPopulation &destination, ConnectionIterator &iterator, bool collectPairs=false, ConnectPairsVector connectPairs=ConnectPairsVector(new vector< pair< SimObject::ID, SimObject::ID > >))=0
 Make direct connections between source and dest. population.
virtual SimObject::ID::Vector connect (const SimObjectPopulation &source, const SimObjectPopulation &destination, const SimObjectFactory &connector, ConnectionIterator &iterator, bool collectIDs=false, bool collectPairs=false, ConnectPairsVector connectPairs=ConnectPairsVector(new vector< pair< SimObject::ID, SimObject::ID > >))=0
 Make connections between source and dest. population using a SimObjectFactory (usually some synapse) to connect the objects.
virtual SimObject::ID::Vector connect (const SimObjectPopulation &source, const SimObjectPopulation &destination, ConnObjectFactory &connector, ConnectionIterator &iterator, bool collectIDs=false, bool collectPairs=false, ConnectPairsVector connectPairs=ConnectPairsVector(new vector< pair< SimObject::ID, SimObject::ID > >))=0
 Make connections between source and dest. population using a SimObjectFactory (usually some synapse) to connect the objects.
unsigned connect (const vector< SimObject::ID::Packed > &source, const vector< SimObject::ID::Packed > &destination, ConnectionIterator &iterator, bool collectPairs=false, ConnectPairsVector connectPairs=ConnectPairsVector(new vector< pair< SimObject::ID, SimObject::ID > >))
 Make direct connections between source and dest. population.
SimObject::ID::Vector connect (const vector< SimObject::ID::Packed > &source, const vector< SimObject::ID::Packed > &destination, const SimObjectFactory &connector, ConnectionIterator &iterator, bool collectIDs=false, bool collectPairs=false, ConnectPairsVector connectPairs=ConnectPairsVector(new vector< pair< SimObject::ID, SimObject::ID > >))
 Make connections between source and dest. population using a SimObjectFactory (usually some synapse) to connect the objects.
SimObject::ID::Vector connect (const vector< SimObject::ID::Packed > &source, const vector< SimObject::ID::Packed > &destination, ConnObjectFactory &connector, ConnectionIterator &iterator, bool collectIDs=false, bool collectPairs=false, ConnectPairsVector connectPairs=ConnectPairsVector(new vector< pair< SimObject::ID, SimObject::ID > >))
 Make connections between source and dest. population using a SimObjectFactory (usually some synapse) to connect the objects.

Protected Attributes

SimNetworknet


Detailed Description

Interface for connecting populations of SimObject's.

Individual implementations can use different stratgies and alorithms in order to be optimal for different situations. E.g. distributed versus non distributed networks, etc.

Definition at line 28 of file WiringMethod.h.


Member Typedef Documentation

typedef shared_ptr< vector< pair<SimObject::ID, SimObject::ID> > > WiringMethod::ConnectPairsVector

Definition at line 31 of file WiringMethod.h.


Constructor & Destructor Documentation

WiringMethod::WiringMethod ( SimNetwork net  )  [inline]

New WiringMethod which belongs to the given SimNetwork.

Definition at line 34 of file WiringMethod.h.

WiringMethod::WiringMethod ( SimNetwork net  )  [inline]

New WiringMethod which belongs to the given SimNetwork.

Definition at line 39 of file WiringMethod.h.

WiringMethod::WiringMethod (  )  [inline]

New WiringMethod which belongs to NO SimNetwork.

Definition at line 44 of file WiringMethod.h.

virtual WiringMethod::~WiringMethod (  )  [inline, virtual]

Definition at line 53 of file WiringMethod.h.


Member Function Documentation

void WiringMethod::setNetwork ( SimNetwork net  )  [inline]

Set the associated SimNetwork.

Attention:
Use only if you now what you do!

Definition at line 49 of file WiringMethod.h.

virtual unsigned WiringMethod::connect ( const SimObjectPopulation source,
const SimObjectPopulation destination,
ConnectionIterator iterator,
bool  collectPairs = false,
ConnectPairsVector  connectPairs = ConnectPairsVector(new vector< pair< SimObject::IDSimObject::ID > >) 
) [pure virtual]

Make direct connections between source and dest. population.

Parameters:
source The source population
destination The destination population (can be the same as source population)
iterator The connection iterator to use (e.g. PredicateBasedConnections or RandomConnections ) which determines which connections are made.
collectPairs Flaf which idicates wheter the pairs of ID's of the connected objects souble be collected or not.
connectPairs Vector where the collected connection pairs are written to if collectPairs == true Be aware that the collected pairs are collected on each node of a distributed simulation when using a DistributedSingleThreadNetwork or DistributedMultiThreadNetwork which may lead to a large memory consumption.

Implemented in DistributedSyncWiringMethod, OneToOneWiringMethod, and SimpleAllToAllWiringMethod.

Referenced by connect(), and ConnectionsProjection::ConnectionsProjection().

virtual SimObject::ID::Vector WiringMethod::connect ( const SimObjectPopulation source,
const SimObjectPopulation destination,
const SimObjectFactory connector,
ConnectionIterator iterator,
bool  collectIDs = false,
bool  collectPairs = false,
ConnectPairsVector  connectPairs = ConnectPairsVector(new vector< pair< SimObject::IDSimObject::ID > >) 
) [pure virtual]

Make connections between source and dest. population using a SimObjectFactory (usually some synapse) to connect the objects.

Parameters:
source The source population
destination The destination population (can be the same as source population)
connector The SimObjectFactory to use to generate connecting objects (e.g. StaticSpikingSynapse)
iterator The connection iterator to use (e.g. PredicateBasedConnections or RandomConnections ) which determines which connections are made.
collectIDs Flag which idicates whether the SimObject::ID's of the generated connector objects should be collected or not.
collectPairs Flaf which idicates wheter the pairs of ID's of the connected objects souble be collected or not.
connectPairs Vector where the collected connection pairs are written to if collectPairs == true Be aware that the collected ID's or indices are collected on each node of a distributed simulation when using a DistributedSingleThreadNetwork or DistributedMultiThreadNetwork which may lead to a large memory consumption.

Implemented in DistributedSyncWiringMethod, OneToOneWiringMethod, and SimpleAllToAllWiringMethod.

virtual SimObject::ID::Vector WiringMethod::connect ( const SimObjectPopulation source,
const SimObjectPopulation destination,
ConnObjectFactory connector,
ConnectionIterator iterator,
bool  collectIDs = false,
bool  collectPairs = false,
ConnectPairsVector  connectPairs = ConnectPairsVector(new vector< pair< SimObject::IDSimObject::ID > >) 
) [pure virtual]

Make connections between source and dest. population using a SimObjectFactory (usually some synapse) to connect the objects.

Parameters:
source The source population
destination The destination population (can be the same as source population)
connector The SimObjectFactory to use to generate connecting objects (e.g. StaticSpikingSynapse)
iterator The connection iterator to use (e.g. PredicateBasedConnections or RandomConnections ) which determines which connections are made.
collectIDs Flag which idicates whether the SimObject::ID's of the generated connector objects should be collected or not.
collectPairs Flaf which idicates wheter the pairs of ID's of the connected objects souble be collected or not.
connectPairs Vector where the collected connection pairs are written to if collectPairs == true Be aware that the collected ID's or indices are collected on each node of a distributed simulation when using a DistributedSingleThreadNetwork or DistributedMultiThreadNetwork which may lead to a large memory consumption.

Implemented in DistributedSyncWiringMethod, OneToOneWiringMethod, and SimpleAllToAllWiringMethod.

unsigned WiringMethod::connect ( const vector< SimObject::ID::Packed > &  source,
const vector< SimObject::ID::Packed > &  destination,
ConnectionIterator iterator,
bool  collectPairs = false,
ConnectPairsVector  connectPairs = ConnectPairsVector(new vector< pair<SimObject::IDSimObject::ID> >) 
) [inline]

Make direct connections between source and dest. population.

Parameters:
source Vector of soure SimObject::ID's
destination Vector of destination SimObject::ID's (can be the same as source population)
iterator The connection iterator to use (e.g. PredicateBasedConnections or RandomConnections ) which determines which connections are made.
collectPairs Flaf which idicates wheter the pairs of ID's of the connected objects souble be collected or not.
connectPairs Vector where the collected connection pairs are written to if collectPairs == true Be aware that the collected pairs are collected on each node of a distributed simulation when using a DistributedSingleThreadNetwork or DistributedMultiThreadNetwork which may lead to a large memory consumption.

Definition at line 124 of file WiringMethod.h.

References connect().

Here is the call graph for this function:

SimObject::ID::Vector WiringMethod::connect ( const vector< SimObject::ID::Packed > &  source,
const vector< SimObject::ID::Packed > &  destination,
const SimObjectFactory connector,
ConnectionIterator iterator,
bool  collectIDs = false,
bool  collectPairs = false,
ConnectPairsVector  connectPairs = ConnectPairsVector(new vector< pair<SimObject::IDSimObject::ID> >) 
) [inline]

Make connections between source and dest. population using a SimObjectFactory (usually some synapse) to connect the objects.

Parameters:
source Vector of soure SimObject::ID's
destination Vector of destination SimObject::ID's (can be the same as source population)
connector The SimObjectFactory to use to generate connecting objects (e.g. StaticSpikingSynapse)
iterator The connection iterator to use (e.g. PredicateBasedConnections or RandomConnections ) which determines which connections are made.
collectIDs Flag which idicates whether the SimObject::ID's of the generated connector objects should be collected or not.
collectPairs Flaf which idicates wheter the pairs of ID's of the connected objects souble be collected or not.
connectPairs Vector where the collected connection pairs are written to if collectPairs == true Be aware that the collected ID's or indices are collected on each node of a distributed simulation when using a DistributedSingleThreadNetwork or DistributedMultiThreadNetwork which may lead to a large memory consumption.

Definition at line 147 of file WiringMethod.h.

References connect().

Here is the call graph for this function:

SimObject::ID::Vector WiringMethod::connect ( const vector< SimObject::ID::Packed > &  source,
const vector< SimObject::ID::Packed > &  destination,
ConnObjectFactory connector,
ConnectionIterator iterator,
bool  collectIDs = false,
bool  collectPairs = false,
ConnectPairsVector  connectPairs = ConnectPairsVector(new vector< pair<SimObject::IDSimObject::ID> >) 
) [inline]

Make connections between source and dest. population using a SimObjectFactory (usually some synapse) to connect the objects.

Parameters:
source Vector of soure SimObject::ID's
destination Vector of destination SimObject::ID's (can be the same as source population)
connector The SimObjectFactory to use to generate connecting objects (e.g. StaticSpikingSynapse)
iterator The connection iterator to use (e.g. PredicateBasedConnections or RandomConnections ) which determines which connections are made.
collectIDs Flag which idicates whether the SimObject::ID's of the generated connector objects should be collected or not.
collectPairs Flaf which idicates wheter the pairs of ID's of the connected objects souble be collected or not.
connectPairs Vector where the collected connection pairs are written to if collectPairs == true Be aware that the collected ID's or indices are collected on each node of a distributed simulation when using a DistributedSingleThreadNetwork or DistributedMultiThreadNetwork which may lead to a large memory consumption.

Definition at line 172 of file WiringMethod.h.

References connect().

Here is the call graph for this function:


Member Data Documentation


The documentation for this class was generated from the following file:

Generated on Wed Jul 9 16:34:55 2008 for PCSIM by  doxygen 1.5.5