@@ -48,11 +48,19 @@ CStatus GGroup::addElement(GElementPtr element) {
48
48
49
49
this ->group_elements_arr_ .emplace_back (element);
50
50
element->belong_ = this ;
51
+ // 在这里不要进行判断返回值,因为可能是region刚刚创建的时候,还没被写入 pipeline中
51
52
element->addManagers (param_manager_, event_manager_, stage_manager_);
53
+
54
+ status = addElementEx (element);
52
55
CGRAPH_FUNCTION_END
53
56
}
54
57
55
58
59
+ CStatus GGroup::addElementEx (GElementPtr element) {
60
+ CGRAPH_EMPTY_FUNCTION
61
+ }
62
+
63
+
56
64
CVoid GGroup::dumpGroupLabelBegin (std::ostream& oss) {
57
65
oss << " subgraph " ;
58
66
oss << " cluster_p" << this ; // cluster_ 是 graphviz的关键字,和CGraph中GCluster逻辑无关
@@ -95,12 +103,12 @@ CStatus GGroup::addManagers(GParamManagerPtr paramManager,
95
103
GEventManagerPtr eventManager,
96
104
GStageManagerPtr stageManager) {
97
105
CGRAPH_FUNCTION_BEGIN
98
- CGRAPH_ASSERT_NOT_NULL (paramManager, eventManager)
106
+ CGRAPH_ASSERT_NOT_NULL (paramManager, eventManager, stageManager )
99
107
CGRAPH_ASSERT_INIT (false )
100
108
101
- this -> setGParamManager (paramManager);
102
- this -> setGEventManager (eventManager);
103
- this -> setGStageManager (stageManager);
109
+ status = GElement::addManagers (paramManager, eventManager, stageManager );
110
+ CGRAPH_FUNCTION_CHECK_STATUS
111
+
104
112
for (GElementPtr element : group_elements_arr_) {
105
113
CGRAPH_ASSERT_NOT_NULL (element)
106
114
status += element->addManagers (paramManager, eventManager, stageManager);
0 commit comments