▼Nhh | Hedgehog main namespace |
▼Nbehavior | Hedgehog behavior namespace |
CCanTerminate | Behavior abstraction for nodes that expose termination condition |
CCleanable | Cleanable interface |
CCopyable | Copy interface used to copy a node when either a group of nodes is created or a node is duplicated when an execution pipeline is created |
CExecute | Execute Behavior abstraction, node that has an execution for an Input data type |
CMultiExecute | Behavior abstraction for nodes that present computation on different types of inputs |
CMultiReceivers | Behavior abstraction for nodes that receive multiple types of data |
CMultiSenders | Behavior abstraction for nodes that send multiple types of data |
CMultiSwitchRules | Switch rules behavior abstraction for different types of input |
CNode | Behavior abstraction for the base node |
CStateMultiSenders | Behavior abstraction for states that send multiple types of data |
CStateSender | Behavior abstraction for states that send a type of data, holds a ready list for that type |
CSwitchRule | Switch rule behavior abstraction for a type of input |
CTaskMultiSenders | Behavior abstraction for tasks that send multiple types of data |
CTaskNode | Behavior abstraction for TaskNode |
▼Ncore | Hedgehog core namespace |
►Nabstraction | Hedgehog abstraction namespace |
CAnyGroupableAbstraction | Abstraction for cores/nodes that can form groups |
CCanTerminateAbstraction | Abstraction for core that present termination condition |
CCleanableAbstraction | Abstraction for cleanable core |
CClonableAbstraction | Core abstraction for clonable nodes, nodes duplicated by execution pipeline |
CCopyableAbstraction | Core abstraction for copyable nodes |
CExecuteAbstraction | Core execute abstraction, interface to user-defined execution |
CExecutionPipelineInputsManagementAbstraction | Input management abstraction for the execution pipeline |
CExecutionPipelineNodeAbstraction | Abstraction specialized for the execution pipeline |
CExecutionPipelineOutputsManagementAbstraction | Output management abstraction for the execution pipeline |
CGraphInputsManagementAbstraction | Input management abstraction for the graph |
CGraphNodeAbstraction | Base graph node abstraction |
CGraphOutputsManagementAbstraction | Output management abstraction for the grpah |
CGroupableAbstraction | Typed abstraction for groupable node |
CNodeAbstraction | Base core node abstraction |
CNotifierAbstraction | Core abstraction to notify slots |
CPrintableAbstraction | PrintAbstraction, used to determine if the node should be visited by the printer and colored |
CReceiverAbstraction | Core's abstraction to receive a piece of data |
CSenderAbstraction | Core abstraction to send data |
CSlotAbstraction | Core's abstraction to receive a signal |
CTaskInputsManagementAbstraction | Input management abstraction for the task |
CTaskNodeAbstraction | Task core abstraction used to define some method for task-like behaving cores like CoreExecutionPipeline, CoreStateManager, CoreTask |
CTaskOutputsManagementAbstraction | Output management abstraction for the task |
►Nimplementor | Hedgehog implementor namespace |
CDefaultExecute | Default execute implementor, only calls user-defined execute method in behavior::Execute interface |
CDefaultMultiExecutes | Default concrete implementation for different typed execution method for tasks |
CDefaultMultiSenders | Default implementors for the sender abstraction, used by tasks or state managers |
CDefaultNotifier | Default concrete implementation of notifier interface |
CDefaultSender | Default concrete implementation of sender abstraction |
CDefaultSlot | Default concrete implementation of slot interface |
CGraphNotifier | Default concrete implementation of the notifier abstraction for the graph core |
CGraphReceiver | Default concrete implementation of the receiver abstraction for the graph core |
CGraphSender | Default concrete implementation of the sender abstraction for the graph core |
CGraphSlot | Default concrete implementation of the slot abstraction for the graph core |
CImplementorExecute | Implementor for the ExecuteAbstraction |
CImplementorNotifier | Implementor for the NotifierAbstraction |
CImplementorReceiver | Implementor for the ReceiverAbstraction |
CImplementorSender | Implementor for the SenderAbstraction |
CImplementorSlot | Implementor for the SlotAbstraction |
CMultiQueueReceivers | Concrete implementation of the receiver core abstraction for multiple types using a std::queue |
CQueueReceiver | Concrete implementation of the receiver core abstraction for a type using a std::queue |
CCoreExecutionPipeline | Execution pipeline core |
CCoreGraph | Graph core |
CCoreStateManager | AbstractState manager core |
CCoreSwitch | Switch core |
CCoreTask | Task core |
CGraphSink | Sink of the graph, only used in an outer graph |
CGraphSource | Source of the graph, only used in an outer graph |
▼Ntool | Hedgehog tool namespace |
►Ninternals | Hedgehog tool internals namespace |
CHasType | Base definition of HasType testing if a type T is in tuple Tuple |
CHasType< T, std::tuple< Front, Ts... > > | Definition of HasType if T is different than the front type of the variadic |
CHasType< T, std::tuple< T, Ts... > > | Definition of HasType if T is the same type as the front type of the variadic |
CHasType< T, std::tuple<> > | Default definition of HasType if the tuple is empty |
CIntersect | Intersect metafunction creating a tuple of types that are in T1 and T2 |
CIntersectImpl | Base definition of the implementation of the Intersect metafunction |
CIntersectImpl< T1, T2, Size, Size > | Definition of the implementation of the Intersect metafunction when arriving at the end of T1 |
CPushFront | Base definition of PushFront accepting a tuple as template parameter and the element to add |
CPushFront< std::tuple< Vs... >, T > | Definition of PushFront accepting a variadic as template parameter and the element to add |
CSplitInput | Base definition of SplitInput splitting a tuple of type to get the input types |
CSplitInput< Types, std::index_sequence< Indices... > > | Definition of SplitInput splitting a tuple of type to get the input types |
CSplitOutput | Base definition of SplitOutput_t splitting a tuple of type to get the output types |
CSplitOutput< Types, delta, std::index_sequence< Indices... > > | Base definition of SplitOutput_t splitting a tuple of type to get the output types |
CSplitter | Metafunction splitting a variadic to input and output types at a specific delimiter |
CPool | Pool of data used by the memory manager |
►CPrintOptions | Node print options |
CColor | Simple color representation |
CAbstractCUDATask | Abstract Task specialized for CUDA computation |
CAbstractExecutionPipeline | Execution pipeline abstraction |
CAbstractMemoryManager | Abstract Memory manager |
CAbstractState | Hedgehog AbstractState |
CAbstractTask | Base node for computation |
CBlueToRedColor | Blue to Red color range |
CColorPicker | Color scheme abstraction for dot file generation |
CDefaultScheduler | Default scheduler use in Hedgehog graph |
CGraph | Hedgehog graph abstraction |
CGraphSignalHandler | Implements a signal handler to catch events such as termination and killing |
CJetColor | Jet color range |
CManagedMemory | Abstraction used to manage an user type with a memory manager |
CMemoryManager | Base memory manager |
CNvtxProfiler | A class to wrap calls to the NVTX library for tracking events that occur within an Hedgehog task graph |
CPrinter | Printer abstraction to get a snapshot of the metrics of the Hedgehog graph |
CResultVisitor | Visitor used to explore Hedgehog graph variant result |
CScheduler | Scheduler abstraction to manage graph's threads |
CStateManager | AbstractState manager |
CStaticMemoryManager | Static memory manager |