|
CGraph
|
多个Element的集合,一般非纯并行、也非纯串行(Gluster)时使用 More...
#include <GRegion.h>


Public Member Functions | |
| GRegion * | setGEngineType (GEngineType type) |
| CSize | trim () |
Public Member Functions inherited from GElement | |
| template<typename TAspect , typename TParam = GAspectDefaultParam, c_enable_if_t< std::is_base_of< GAspect, TAspect >::value, int > = 0, c_enable_if_t< std::is_base_of< GAspectParam, TParam >::value, int > = 0> | |
| GElement * | addGAspect (TParam *param=nullptr) |
| template<typename TAspect , typename ... Args, c_enable_if_t< std::is_base_of< GTemplateAspect< Args... >, TAspect >::value, int > = 0> | |
| GElement * | addGAspect (Args... args) |
| template<typename T , c_enable_if_t< std::is_base_of< GElementParam, T >::value, int > = 0> | |
| GElement * | addEParam (const std::string &key, T *param) |
| CStatus | addDependGElements (const std::set< GElement * > &elements) |
| GElement * | setName (const std::string &name) override |
| GElement * | setLoop (CSize loop) |
| GElement * | setLevel (CLevel level) |
| GElement * | setVisible (CBool visible) |
| GElement * | setBindingIndex (CIndex index) |
| GElement * | setTimeout (CMSec timeout, GElementTimeoutStrategy strategy=GElementTimeoutStrategy::AS_ERROR) |
| GElement * | setMacro (CBool macro) |
| CBool | isGGroup () const |
| CBool | isGAdaptor () const |
| CBool | isGNode () const |
| GElementState | getCurState () const |
| CStatus | removeDepend (GElement *element) |
| GElement & | operator-- (int) noexcept |
| GElement & | operator> (GElement *element) |
| GElement & | operator& (GElement *element) |
| GElement & | operator* (CSize loop) noexcept |
| template<typename TAspect , typename TParam , c_enable_if_t< std::is_base_of< GAspect, TAspect >::value, int > , c_enable_if_t< std::is_base_of< GAspectParam, TParam >::value, int > > | |
| CGRAPH_NAMESPACE_BEGIN GElementPtr | addGAspect (TParam *param) |
| template<typename TAspect , typename ... Args, c_enable_if_t< std::is_base_of< GTemplateAspect< Args... >, TAspect >::value, int > > | |
| GElementPtr | addGAspect (Args... args) |
| template<typename T , c_enable_if_t< std::is_base_of< GElementParam, T >::value, int > > | |
| GElementPtr | addEParam (const std::string &key, T *param) |
Public Member Functions inherited from CObject | |
| CObject ()=default | |
| virtual | ~CObject ()=default |
Public Member Functions inherited from CDescInfo | |
| virtual const std::string & | getName () const |
| const std::string & | getSession () const |
| const std::string & | getDescription () const |
| virtual auto | setDescription (const std::string &description) -> decltype(this) |
| virtual | ~CDescInfo ()=default |
Protected Member Functions | |
| GRegion () | |
| ~GRegion () override | |
| CStatus | init () final |
| CStatus | run () final |
| CStatus | destroy () final |
Protected Member Functions inherited from GElement | |
| GElement ()=default | |
| ~GElement () override | |
| virtual CStatus | prepareRun () |
| virtual CStatus | checkRunResult () |
| virtual CBool | isHold () |
| virtual CBool | isMatch () |
| CStatus | crashed (const CException &ex) |
| template<typename T , c_enable_if_t< std::is_base_of< GElementParam, T >::value, int > = 0> | |
| T * | getEParam (const std::string &key) |
| CIndex | getThreadIndex () |
| CBool | isTimeout () const |
| CIndex | getBindingIndex () const |
| GElementRelation | getRelation () const |
| CGRAPH_NO_ALLOWED_COPY (GElement) | |
Private Member Functions | |
| CStatus | addElement (GElementPtr element) final |
| CVoid | dump (std::ostream &oss) final |
| CBool | isSerializable () const final |
| CStatus | addManagers (GParamManagerPtr paramManager, GEventManagerPtr eventManager, GStageManagerPtr stageManager) final |
| CBool | isSeparate (GElementCPtr a, GElementCPtr b) const final |
Private Attributes | |
| GElementManagerPtr | manager_ = nullptr |
Friends | |
| class | GPipeline |
| class | CAllocator |
| class | GTrimOptimizer |
Additional Inherited Members | |
Protected Attributes inherited from CDescInfo | |
| std::string | name_ |
| std::string | session_ |
| std::string | description_ |
多个Element的集合,一般非纯并行、也非纯串行(Gluster)时使用
|
explicitprotected |

|
overrideprotected |
|
finalprivatevirtual |
向group中,添加element信息
| element |
Reimplemented from GGroup.

|
finalprivatevirtual |
|
finalprotectedvirtual |
|
finalprivatevirtual |
graphviz dump 逻辑
| oss |
Reimplemented from GElement.

|
finalprotectedvirtual |
|
finalprivatevirtual |
判断两个element,是否相互独立
| a | |
| b |
Reimplemented from GGroup.

|
finalprivatevirtual |
判断当前元素,是否可以线性执行。默认返回true
针对group的情况,应该是所有在其中的element 都是可以串行的,才认定为可串行 但是在 region和 multiCondition中,有针对性的判断
Reimplemented from GGroup.

|
finalprotectedvirtual |
| GRegionPtr GRegion::setGEngineType | ( | GEngineType | type | ) |
设置EngineType信息
| type |

| CSize GRegion::trim | ( | ) |
修剪冗余的连边信息

|
friend |
|
friend |
|
friend |
|
private |