RepastHPC  2.3.1
Public Member Functions | List of all members
repast::Importer_MAP_int Class Reference

Importer that maintains a map of agents being sent from each sending process and a count of the number of times that agent was requested. More...

#include <AgentImporterExporter.h>

Inheritance diagram for repast::Importer_MAP_int:
repast::AbstractImporter

Public Member Functions

virtual void registerOutgoingRequests (AgentRequest &req)
 Given an agent request (including requests for agents on multiple other processes), makes a record of the agents that are being requested by this process and will therefore be received from other processes. More...
 
virtual void importedAgentIsRemoved (const AgentId &id)
 Notifies this importer that the agent that it (presumably) has been importing has been removed from the simulation on its home process, and the information for that agent will no longer be sent.
 
virtual void importedAgentIsMoved (const AgentId &id, int newProcess)
 Notifies this importer that the agent that it (presumably) has been importing from another process has been moved; its information will now be received from its new home process (unless the agent was moved to this process)
 
virtual std::string getReport ()
 Get a printable indication of the data in this object.
 
virtual void getSetOfAgentsBeingImported (std::set< AgentId > &set)
 
virtual void clear ()
 
- Public Member Functions inherited from repast::AbstractImporter
virtual const std::set< int > & getExportingProcesses ()
 Gets a const reference to the set of ints representing the processes that are sending this process agent information.
 
void importedAgentIsNowLocal (const AgentId &id)
 Some semantic sugar; operationally this is the same as 'importedAgentIsRemoved'.
 

Additional Inherited Members

- Protected Attributes inherited from repast::AbstractImporter
std::set< int > exportingProcesses
 

Detailed Description

Importer that maintains a map of agents being sent from each sending process and a count of the number of times that agent was requested.

This is semantically equivalent to a 'LIST' type, but may be more or less appropriate in specific contexts based on performance. Duplicate requests for an agent increment the count associated with that agent; canceling a request reduces that count. If a given sending process has no agents being shared, no mpi 'receive' will be created, but if there are agents being shared, a 'receive' will be created.

Member Function Documentation

◆ registerOutgoingRequests()

void Importer_MAP_int::registerOutgoingRequests ( AgentRequest req)
virtual

Given an agent request (including requests for agents on multiple other processes), makes a record of the agents that are being requested by this process and will therefore be received from other processes.

The record must at a minimum indicate which other processes are sending agent information, but may include other information, such as how many times a particular agent has been requested.

Implements repast::AbstractImporter.


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