equal
deleted
inserted
replaced
1068 /// This map returns the in-degree of a node. Once it is constructed, |
1068 /// This map returns the in-degree of a node. Once it is constructed, |
1069 /// the degrees are stored in a standard NodeMap, so each query is done |
1069 /// the degrees are stored in a standard NodeMap, so each query is done |
1070 /// in constant time. On the other hand, the values are updated automatically |
1070 /// in constant time. On the other hand, the values are updated automatically |
1071 /// whenever the graph changes. |
1071 /// whenever the graph changes. |
1072 /// |
1072 /// |
|
1073 /// \warning Besides addNode() and addEdge(), a graph structure may provide |
|
1074 /// alternative ways to mogify the graph. The correct behavior of InDegMap |
|
1075 /// is not guarantied if these additional featureas are used. For example |
|
1076 /// the funstions \ref ListGraph::changeSource() "changeSource()", |
|
1077 /// \ref ListGraph::changeTarget() "changeTarget()" and |
|
1078 /// \ref ListGraph::reverseEdge() "reverseEdge()" |
|
1079 /// of \ref ListGraph will \e not update the degree values correctly. |
|
1080 /// |
1073 /// \sa OutDegMap |
1081 /// \sa OutDegMap |
1074 |
1082 |
1075 template <typename _Graph> |
1083 template <typename _Graph> |
1076 class InDegMap |
1084 class InDegMap |
1077 : protected AlterationNotifier<typename _Graph::Edge>::ObserverBase { |
1085 : protected AlterationNotifier<typename _Graph::Edge>::ObserverBase { |
1152 |
1160 |
1153 const _Graph& graph; |
1161 const _Graph& graph; |
1154 AutoNodeMap deg; |
1162 AutoNodeMap deg; |
1155 }; |
1163 }; |
1156 |
1164 |
1157 |
|
1158 /// \brief Map of the node out-degrees. |
1165 /// \brief Map of the node out-degrees. |
1159 /// |
1166 /// |
1160 /// This map returns the out-degree of a node. Once it is constructed, |
1167 /// This map returns the out-degree of a node. Once it is constructed, |
1161 /// the degrees are stored in a standard NodeMap, so each query is done |
1168 /// the degrees are stored in a standard NodeMap, so each query is done |
1162 /// in constant time. On the other hand, the values are updated automatically |
1169 /// in constant time. On the other hand, the values are updated automatically |
1163 /// whenever the graph changes. |
1170 /// whenever the graph changes. |
|
1171 /// |
|
1172 /// \warning Besides addNode() and addEdge(), a graph structure may provide |
|
1173 /// alternative ways to mogify the graph. The correct behavior of OutDegMap |
|
1174 /// is not guarantied if these additional featureas are used. For example |
|
1175 /// the funstions \ref ListGraph::changeSource() "changeSource()", |
|
1176 /// \ref ListGraph::changeTarget() "changeTarget()" and |
|
1177 /// \ref ListGraph::reverseEdge() "reverseEdge()" |
|
1178 /// of \ref ListGraph will \e not update the degree values correctly. |
1164 /// |
1179 /// |
1165 /// \sa InDegMap |
1180 /// \sa InDegMap |
1166 |
1181 |
1167 template <typename _Graph> |
1182 template <typename _Graph> |
1168 class OutDegMap |
1183 class OutDegMap |