|  | 
|  | GroupableAbstraction (CopyableNode *const copyableNode, size_t const &numberThreads) | 
|  | Constructor using the node abstraction to call the user-defined copy and the number of threads. 
 | 
|  | 
|  | ~GroupableAbstraction () override=default | 
|  | Default destructor. 
 | 
|  | 
| int | threadId () const | 
|  | Accessor to thread id. 
 | 
|  | 
| std::shared_ptr< CopyableNode > | callCopyAndRegisterInGroup () | 
|  | Call the used-defined copy and register the copy in the group. 
 | 
|  | 
| virtual void | copyInnerStructure (CopyableCore *copyableCore)=0 | 
|  | Copy the inner structure of the core. 
 | 
|  | 
|  | CopyableAbstraction (CopyableNode *const copyableNode) | 
|  | Constructor using a node abstraction. 
 | 
|  | 
| virtual | ~CopyableAbstraction ()=default | 
|  | Default destructor. 
 | 
|  | 
|  | AnyGroupableAbstraction (size_t const numberThreads) | 
|  | Constructor using the number of threads. 
 | 
|  | 
| virtual | ~AnyGroupableAbstraction ()=default | 
|  | Default destructor. 
 | 
|  | 
| size_t | numberThreads () const | 
|  | Accessor to the number of threads. 
 | 
|  | 
| bool | isInGroup () const | 
|  | Test if a group is needed. 
 | 
|  | 
| std::string | nodeId () const | 
|  | Accessor to the node id (redirection to NodeAbstraction::nodeId) 
 | 
|  | 
| std::shared_ptr< std::set< AnyGroupableAbstraction * > > const & | group () const | 
|  | Group of cores accessor. 
 | 
|  | 
| std::shared_ptr< std::set< NodeAbstraction * > > | groupAsNodes () const | 
|  | Create a set of the NodeAbstraction constituting the group. 
 | 
|  | 
| AnyGroupableAbstraction * | groupRepresentative () const | 
|  | Group representative accessor. 
 | 
|  | 
| std::string | groupRepresentativeId () const | 
|  | Group id representative accessor. 
 | 
|  | 
| void | groupRepresentative (AnyGroupableAbstraction *groupRepresentative) | 
|  | Group representative setter. 
 | 
|  | 
| void | group (std::shared_ptr< std::set< AnyGroupableAbstraction * > > const &group) | 
|  | Group setter. 
 | 
|  | 
| size_t | numberActiveThreadInGroup () const | 
|  | Accessor to the number of nodes alive in the group. 
 | 
|  | 
| std::pair< std::chrono::nanoseconds, std::chrono::nanoseconds > | minmaxWaitDurationGroup () const | 
|  | Accessor to the min / max wait duration of the nodes in the group. 
 | 
|  | 
| std::pair< std::chrono::nanoseconds, std::chrono::nanoseconds > | meanSDWaitDurationGroup () const | 
|  | Accessor to the mean / standard deviation wait duration of the nodes in the group. 
 | 
|  | 
| std::pair< std::chrono::nanoseconds, std::chrono::nanoseconds > | minmaxExecutionDurationGroup () const | 
|  | Accessor to the min / max execution duration of the nodes in the group. 
 | 
|  | 
| std::pair< std::chrono::nanoseconds, std::chrono::nanoseconds > | meanSDExecutionDurationGroup () const | 
|  | Accessor to the mean / standard deviation execution duration of the nodes in the group. 
 | 
|  | 
| std::pair< std::chrono::nanoseconds, std::chrono::nanoseconds > | minmaxExecTimePerElementGroup () const | 
|  | Accessor to the min / max execution per elements duration of the nodes in the group. 
 | 
|  | 
| std::pair< std::chrono::nanoseconds, std::chrono::nanoseconds > | meanSDExecTimePerElementGroup () const | 
|  | Accessor to the mean / standard deviation execution per elements duration of the nodes in the group. 
 | 
|  | 
| std::pair< std::chrono::nanoseconds, std::chrono::nanoseconds > | minmaxMemoryWaitTimeGroup () const | 
|  | Accessor to the min / max wait time duration of the nodes in the group. 
 | 
|  | 
| std::pair< std::chrono::nanoseconds, std::chrono::nanoseconds > | meanSDMemoryWaitTimePerElementGroup () const | 
|  | Accessor to the mean / standard deviation wait time duration of the nodes in the group. 
 | 
|  | 
| std::pair< size_t, size_t > | minmaxNumberElementsReceivedGroup () const | 
|  | Accessor to the min / max number of elements received in the group. 
 | 
|  | 
| std::pair< double, double > | meanSDNumberElementsReceivedGroup () const | 
|  | Accessor to the mean / standard deviation number of elements received in the group. 
 | 
|  | 
| virtual void | createGroup (std::map< NodeAbstraction *, std::vector< NodeAbstraction * > > &)=0 | 
|  | Create a group to insert in the map. 
 | 
|  | 
template<tool::CopyableNode CopyableNode, class CopyableCore>
class hh::core::abstraction::GroupableAbstraction< CopyableNode, CopyableCore >
Typed abstraction for groupable node. 
- Template Parameters
- 
  
    | CopyableNode | Type of the node to copy and group |  | CopyableCore | Type of the core to copy and group |  
 
Definition at line 40 of file groupable_abstraction.h.