10
10
int (*reset)(pcilib_context_t *ctx);
12
int (*start)(pcilib_context_t *ctx, pcilib_event_t event_mask, pcilib_event_callback_t callback, void *user);
13
int (*stop)(pcilib_context_t *ctx);
12
int (*start)(pcilib_context_t *ctx, pcilib_event_t event_mask, pcilib_event_flags_t flags);
13
int (*stop)(pcilib_context_t *ctx, pcilib_event_flags_t flags);
14
14
int (*trigger)(pcilib_context_t *ctx, pcilib_event_t event, size_t trigger_size, void *trigger_data);
16
pcilib_event_id_t (*next_event)(pcilib_context_t *ctx, pcilib_event_t event_mask, pcilib_timeout_t timeout);
17
void* (*get_data)(pcilib_context_t *ctx, pcilib_event_id_t event_id, pcilib_event_data_type_t data_type, size_t arg_size, void *arg, size_t *size);
18
int (*return_data)(pcilib_context_t *ctx, pcilib_event_id_t event_id);
16
int (*stream)(pcilib_context_t *ctx, pcilib_event_callback_t callback, void *user);
17
pcilib_event_id_t (*next_event)(pcilib_context_t *ctx, pcilib_timeout_t timeout, pcilib_event_id_t *evid, pcilib_event_info_t **info);
19
void* (*get_data)(pcilib_context_t *ctx, pcilib_event_id_t event_id, pcilib_event_data_type_t data_type, size_t arg_size, void *arg, size_t *size, void *data);
20
int (*return_data)(pcilib_context_t *ctx, pcilib_event_id_t event_id, void *data);
20
22
pcilib_dma_context_t *(*init_dma)(pcilib_context_t *ctx);
28
pcilib_timeout_t duration;
29
} pcilib_autostop_parameters_t;
32
pcilib_event_rawdata_callback_t callback;
34
} pcilib_rawdata_parameters_t;
37
pcilib_autostop_parameters_t autostop;
38
pcilib_rawdata_parameters_t rawdata;
39
} pcilib_event_parameters_t;
41
struct pcilib_event_context_s {
42
pcilib_event_parameters_t params;
47
int pcilib_init_event_engine(pcilib_t *ctx);
25
49
#endif /* _PCILIB_EVENT_H */