1
1
#ifndef RR_GRAPH_BUILDER_H
2
2
#define RR_GRAPH_BUILDER_H
3
3
4
- #include " rr_graph_storage.h"
5
- #include " rr_spatial_lookup.h"
6
-
7
4
/* *
8
5
* @file
9
6
* @brief This file defines the RRGraphBuilder data structure which allows data modification on a routing resource graph
10
7
*
11
- * Note that the builder does not own the storage
12
- * It serves a virtual protocol for
13
- * - node_storage: store the node list
14
- * - node_lookup: store a fast look-up for the nodes
8
+ * The builder does not own the storage but it serves a virtual protocol for
9
+ * - node_storage: store the node list
10
+ * - node_lookup: store a fast look-up for the nodes
15
11
*
16
- * Note:
12
+ * @note
17
13
* - This is the only data structre allowed to modify a routing resource graph
18
14
*
19
15
*/
16
+ #include " rr_graph_storage.h"
17
+ #include " rr_spatial_lookup.h"
18
+
20
19
class RRGraphBuilder {
21
20
/* -- Constructors -- */
22
21
public:
@@ -43,12 +42,13 @@ class RRGraphBuilder {
43
42
*
44
43
* The node will be added to the lookup for every side it is on (for OPINs and IPINs)
45
44
* and for every (x,y) location at which it exists (for wires that span more than one (x,y)).
45
+ *
46
46
* This function requires a valid node which has already been allocated in the node storage, with
47
- * - a valid node id
48
- * - valid geometry information: xlow/ylow/xhigh/yhigh
49
- * - a valid node type
50
- * - a valid node ptc number
51
- * - a valid side (applicable to OPIN and IPIN nodes only
47
+ * - a valid node id
48
+ * - valid geometry information: xlow/ylow/xhigh/yhigh
49
+ * - a valid node type
50
+ * - a valid node ptc number
51
+ * - a valid side (applicable to OPIN and IPIN nodes only
52
52
*/
53
53
void add_node_to_all_locs (RRNodeId node);
54
54
0 commit comments