18 #if !defined(AT_CORE_H_INSIDE) 19 #error "Only <at/core.h> can be included directly." 22 #ifndef AT_GRAPHARRAY_H 23 #define AT_GRAPHARRAY_H 37 AT_ADJACENCY_CUSTOM = 1
55 #define at_grapharray_new(array, adjacency, weighting) _Generic((array), \ 56 AtArrayU8*: at_grapharrayu8_new)(array, adjacency, weighting) 58 (*AtWeightingFuncu8) (AtArrayU8* graph, uint64_t s, uint64_t t,
void* params);
82 at_weighting_diff_abs(AtArrayU8* array, uint64_t s, uint64_t t,
void* params);
91 at_weighting_diff_absc(AtArrayU8* array, uint64_t s, uint64_t t,
void* params);
101 at_weighting_diff_absc_alpha(AtArrayU8* array, uint64_t s, uint64_t t,
void* params);
111 at_grapharray_create();
119 at_grapharrayu8_new(AtArrayU8* array,
135 at_grapharray_remove_arc(
AtGraphArray* g, uint64_t s, uint64_t t);
143 at_grapharray_remove_arcs(
AtGraphArray* g, uint64_t* pairs, uint64_t n);
152 at_grapharray_add_arc(
AtGraphArray* g, uint64_t s, uint64_t t);
161 at_grapharray_remove_edge(
AtGraphArray* grapharray, uint64_t s, uint64_t t);
170 at_grapharray_add_edge(
AtGraphArray* grapharray, uint64_t s, uint64_t t);
180 at_grapharray_get(
AtGraphArray* graph, uint64_t s, uint64_t t);
189 at_grapharray_get_indexr(
AtGraphArray* g, uint64_t s, uint64_t t);
uint8_t * active
Definition: grapharray.h:47
AtWeightingFuncu8 f
Definition: grapharray.h:64
uint64_t * neighbors
Definition: grapharray.h:44
AtArrayHeader * h
Definition: grapharray.h:45
A directed weighted grid graph.
Definition: grapharray.h:43
double * weights
Definition: grapharray.h:46
uint8_t adjacency
Definition: grapharray.h:48
Weighting information.
Definition: grapharray.h:63
uint8_t padding[6]
Definition: grapharray.h:49
void * params
Definition: grapharray.h:65