sys-sage
Loading...
Searching...
No Matches
Public Member Functions | List of all members
Core Class Reference

#include <Component.hpp>

Inheritance diagram for Core:
Component

Public Member Functions

 Core (int _id=0, string _name="Core")
 
 Core (Component *parent, int _id=0, string _name="Core")
 
int RefreshFreq (bool keep_history=false)
 
void SetFreq (double _freq)
 
double GetFreq ()
 
- Public Member Functions inherited from Component
 Component (int _id=0, string _name="unknown", int _componentType=SYS_SAGE_COMPONENT_NONE)
 
 Component (Component *parent, int _id=0, string _name="unknown", int _componentType=SYS_SAGE_COMPONENT_NONE)
 
void InsertChild (Component *child)
 
int InsertBetweenParentAndChild (Component *parent, Component *child, bool alreadyParentsChild)
 
int InsertBetweenParentAndChildren (Component *parent, vector< Component * > children, bool alreadyParentsChild)
 
int RemoveChild (Component *child)
 
void SetParent (Component *parent)
 
void PrintSubtree ()
 
void PrintAllDataPathsInSubtree ()
 
string GetName ()
 
void SetName (string _name)
 
int GetId ()
 
int GetComponentType ()
 
string GetComponentTypeStr ()
 
vector< Component * > * GetChildren ()
 
ComponentGetParent ()
 
ComponentGetChild (int _id)
 
ComponentGetChildById (int _id)
 
ComponentGetChildByType (int _componentType)
 
vector< Component * > GetAllChildrenByType (int _componentType)
 
void GetAllChildrenByType (vector< Component * > *_outArray, int _componentType)
 
ComponentFindSubcomponentById (int _id, int _componentType)
 
ComponentGetSubcomponentById (int _id, int _componentType)
 
void GetAllSubcomponentsByType (vector< Component * > *outArray, int _componentType)
 
vector< Component * > GetAllSubcomponentsByType (int _componentType)
 
int CountAllSubcomponents ()
 
int CountAllSubcomponentsByType (int _componentType)
 
int CountAllChildrenByType (int _componentType)
 
ComponentGetAncestorByType (int _componentType)
 
int GetNumThreads ()
 
int GetSubtreeDepth ()
 
ComponentGetNthAncestor (int n)
 
void GetNthDescendents (vector< Component * > *outArray, int depth)
 
vector< Component * > GetNthDescendents (int depth)
 
void GetSubcomponentsByType (vector< Component * > *outArray, int componentType)
 
vector< Component * > GetSubcomponentsByType (int _componentType)
 
void GetComponentsInSubtree (vector< Component * > *outArray)
 
vector< Component * > GetComponentsInSubtree ()
 
vector< DataPath * > * GetDataPaths (int orientation)
 
DataPathGetDataPathByType (int dp_type, int orientation)
 
void GetAllDataPathsByType (vector< DataPath * > *outDpArr, int dp_type, int orientation)
 
vector< DataPath * > GetAllDataPathsByType (int dp_type, int orientation)
 
int CheckComponentTreeConsistency ()
 Checks the consistency of the component tree starting from this component.
 
int GetTopologySize (unsigned *out_component_size, unsigned *out_dataPathSize)
 
int GetDepth (bool refresh)
 
void DeleteDataPath (DataPath *dp)
 
void DeleteAllDataPaths ()
 
void DeleteSubtree ()
 
void Delete (bool withSubtree=true)
 

Additional Inherited Members

- Public Attributes inherited from Component
std::map< std::string, void * > attrib
 
- Protected Attributes inherited from Component
int id
 
int depth
 
string name
 
int count {-1}
 
const int componentType
 
vector< Component * > children
 
Componentparent { nullptr }
 
vector< DataPath * > dp_incoming
 
vector< DataPath * > dp_outgoing
 

Detailed Description

Class Core - represents a CPU core, or a GPU streaming multiprocessor.
This class is a child of Component class, therefore inherits its attributes and methods.

Constructor & Destructor Documentation

◆ Core() [1/2]

Core::Core ( int _id = 0,
string _name = "Core" )

Core constructor (no automatic insertion in the Component Tree). Sets:

Parameters
_id= id, default 0
_name= name, default "Core"
componentType=>SYS_SAGE_COMPONENT_CORE

◆ Core() [2/2]

Core::Core ( Component * parent,
int _id = 0,
string _name = "Core" )

Core constructor with insertion into the Component Tree as the parent 's child (as long as parent is an existing Component). Sets:

Parameters
parent= the parent
_id= id, default 0
_name= name, default "Core"
componentType=>SYS_SAGE_COMPONENT_CORE

Member Function Documentation

◆ GetFreq()

double Core::GetFreq ( )

Gets the frequency of the core.

◆ RefreshFreq()

int Core::RefreshFreq ( bool keep_history = false)

Refreshes the frequency of the core.

◆ SetFreq()

void Core::SetFreq ( double _freq)

Sets the frequency of the core.


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