Go to the documentation of this file.
9 #ifndef ABSTRACTPROCESSOR_H
10 #define ABSTRACTPROCESSOR_H
39 MetaEvent_fifo* MetaEvents;
40 AbstractProcessor(sc_core::sc_module_name nm, vector<scGridPoint*> Specials,
bool StandAlone);
48 void Initialize_method(
void);
50 Populate(vector<scGridPoint*>& Specials);
54 ClusterHead_Get(
int i)
57 {
return dynamic_cast<AbstractCore *
>(mGrid.at(i).at(j));}
71 {
return dynamic_cast<AbstractCore*
>(scProcessor::ByID_Get(N));}
72 string StringOfCore_Get(
int N)
73 {
return StringOfClusterAddress_Get(ByID_Get(N));}
75 {
return dynamic_cast<AbstractCore*
>(scProcessor::ByIDMask_Get(Mask)); }
107 SC_CORE_MASK_TYPE CloneMask,
108 SC_CORE_MASK_TYPE BackLinkMask,
111 FileName_Get(
void){
return lastFile;}
124 vector <AddressToLineRecord*>
130 #endif // ABSTRACTPROCESSOR_H
virtual scHThread * doReboot(SC_ADDRESS_TYPE A, HThreadPreference_t hpt_Any)
!
Definition: AbstractProcessor.h:104
GridPoint * ByPosition_Get(int X, int Y)
Get a gridpoint by its topological position (NOT index!)
scGridPoint * ChildPreAllocateFor(scGridPoint *Parent, CorePreference_t Pref=cpt_AnyCore)
Allocate a core with preference.
AbstractCore * ByIDMask_Get(SC_CORE_MASK_TYPE Mask)
Return a pointer to gridpoint of the core given by its mask.
Definition: AbstractProcessor.h:74
The scHThread class.
Definition: scHThread.h:138
Implements a module-name alias facility (i.e., user-provided names. Given that the basic units is scH...
Definition: scProcessor.h:130
GridPoint * ByClusterAddress_Get(ClusterAddress_t C)
Get a GridPoint pointer given by its ClusterAddress_t C, a specialized integer (network-like address)
HThreadPreference_t
Definition: scHThread.h:28
scGridPoint * ChildFindFor(scGridPoint *Parent, CorePreference_t CPT)
find an scGridPoint for this parent
GridPoint * ClusterHead_Get(unsigned int N)
Return pointer to the cluster head of the Nth cluster.
Definition: AbstractTopology.h:186
ClusterNeighbor
The neighborship in the cluster: the members are referred to with their geographic direction.
Definition: Clustering.h:34
This class implements the autonomous grid point functionality: it is a communicating GridPoint....
Definition: scGridPoint.h:127
scGridPoint * ByIndex_Get(const int X, const int Y)
Get an scGridPoint by its indices.
Definition: scProcessor.h:163
A GridPoint can be addressed also by its cluster address of type ClusterAddress_t....
Definition: Clustering.h:58
GridPoint * ByClusterMember_Get(unsigned short int CN, ClusterNeighbor CM=cm_Head, ClusterNeighbor CP=cm_Head)
GridPoint * ByIndex_Get(const int X, const int Y)
Get a gridpoint defined by its indices (!NOT position)
Function prototypes for the scEMPA simulator, FIFOs.
string lastFile
Remember name of the last object file.
Definition: AbstractProcessor.h:122
uint32_t mTotalBytes
No of bytes loaded.
Definition: AbstractProcessor.h:118
The AbstractProcessor class.
Definition: AbstractProcessor.h:35
@ cm_Head
The central gridpoint.
Definition: Clustering.h:35
The abstract base class (i.e. must not be instantiated) of concrete processors, implementing their ge...
Definition: AbstractCore.h:142
uint32_t mTotalLines
No of lines read.
Definition: AbstractProcessor.h:120
CorePreference_t
Definition: scProcessor.h:62
virtual scGridPoint * ChildAllocateFor(scGridPoint *Parent, CorePreference_t Pref=cpt_AnyCore)
Allocate a core with preference.
AbstractCore * ChildAllocateFor(scGridPoint *Parent, CorePreference_t CPT=cpt_AnyCore) override
Allocate a core with preference.
Definition: AbstractProcessor.h:81