int num_probes;
};
+/*
+ * Input
+ */
+struct input {
+ struct input_format *format;
+ void *param;
+ void *internal;
+};
+
+struct input_format {
+ char *extension;
+ char *description;
+ int (*format_match) (char *filename);
+ int (*in_loadfile) (char *filename);
+};
+
+struct input_format **input_list(void);
+
+
/*
* Output
*/
};
struct output_format **output_list(void);
+
+
int filter_probes(int in_unitsize, int out_unitsize, int *probelist,
char *data_in, uint64_t length_in, char **data_out,
uint64_t *length_out);
struct datastore {
/* Size in bytes of the number of units stored in this datastore */
int ds_unitsize;
- unsigned int num_units;
+ unsigned int num_units; /* TODO: uint64_t */
GSList *chunklist;
};
-struct datastore *datastore_new(int unitsize);
-void datastore_destroy(struct datastore *ds);
+int datastore_new(int unitsize, struct datastore **ds);
+int datastore_destroy(struct datastore *ds);
void datastore_put(struct datastore *ds, void *data, unsigned int length,
int in_unitsize, int *probelist);
void device_scan(void);
void device_close_all(void);
GSList *device_list(void);
-struct device *device_new(struct device_plugin *plugin, int plugin_index);
+struct device *device_new(struct device_plugin *plugin, int plugin_index, int num_probes);
void device_clear(struct device *device);
void device_destroy(struct device *dev);