Line | |
---|
1 | #include "Graf.h" |
---|
2 | |
---|
3 | /** |
---|
4 | * the constructor |
---|
5 | * |
---|
6 | * @param i the id |
---|
7 | * @param c the cost |
---|
8 | */ |
---|
9 | Nod::Nod(int i, double c) |
---|
10 | { |
---|
11 | id = i; |
---|
12 | cost = c; |
---|
13 | nr_pred = 0; |
---|
14 | nr_succ = 0; |
---|
15 | } |
---|
16 | |
---|
17 | /** |
---|
18 | * Method printing the node's information |
---|
19 | */ |
---|
20 | void Nod::print() |
---|
21 | { |
---|
22 | printf("[Nod id = %i cost = %lf pred{ ", id, cost); |
---|
23 | for(int i = 0 ; i < nr_pred ; i ++) |
---|
24 | printf("%i(%lf) ", ((Muchie*)predecesori[i])->predecesor->id, ((Muchie*)predecesori[i])->cost); |
---|
25 | printf("} succ { "); |
---|
26 | for(int i = 0 ; i < nr_succ ; i ++) |
---|
27 | printf("%i(%lf) ", ((Muchie*)succesori[i])->succesor->id, ((Muchie*)succesori[i])->cost); |
---|
28 | printf("}]\n"); |
---|
29 | } |
---|
30 | |
---|
31 | /** |
---|
32 | * Method adding a predecessor |
---|
33 | * |
---|
34 | * @param p the new predecessor |
---|
35 | */ |
---|
36 | void Nod::addPredecesor(void * p) |
---|
37 | { |
---|
38 | if(nr_pred == 0 ) |
---|
39 | predecesori = (void **)calloc(1, sizeof(void *)); |
---|
40 | else |
---|
41 | predecesori = (void **)realloc(predecesori, (nr_pred+1)* sizeof(void *)); |
---|
42 | predecesori[nr_pred] = p; |
---|
43 | nr_pred ++; |
---|
44 | } |
---|
45 | |
---|
46 | /** |
---|
47 | * Method adding a successor |
---|
48 | * |
---|
49 | * @param s the new successor |
---|
50 | */ |
---|
51 | void Nod::addSuccesor(void * s) |
---|
52 | { |
---|
53 | if(nr_succ == 0 ) |
---|
54 | succesori = (void **)calloc(1, sizeof(void *)); |
---|
55 | else |
---|
56 | succesori = (void **)realloc(succesori, (nr_succ+1)* sizeof(void *)); |
---|
57 | succesori[nr_succ] = s; |
---|
58 | nr_succ ++; |
---|
59 | } |
---|
60 | |
---|
61 | |
---|
62 | |
---|
63 | |
---|
Note: See
TracBrowser
for help on using the repository browser.