X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=include%2Fbabeltrace2%2Fgraph%2Fquery-executor.h;h=6097519f7b32b87d60351652e45047c5c6a45706;hb=d29378b187afb5aa5ef1086cf8d96562e3681c32;hp=bc5e5b86929b94658a7b0e5901c11d5e8a71714b;hpb=3fadfbc0c91f82c46bd36e6e0657ea93570c9db1;p=babeltrace.git diff --git a/include/babeltrace2/graph/query-executor.h b/include/babeltrace2/graph/query-executor.h index bc5e5b86..6097519f 100644 --- a/include/babeltrace2/graph/query-executor.h +++ b/include/babeltrace2/graph/query-executor.h @@ -1,8 +1,8 @@ -#ifndef BABELTRACE_GRAPH_QUERY_EXECUTOR_H -#define BABELTRACE_GRAPH_QUERY_EXECUTOR_H +#ifndef BABELTRACE2_GRAPH_QUERY_EXECUTOR_H +#define BABELTRACE2_GRAPH_QUERY_EXECUTOR_H /* - * Copyright 2017-2018 Philippe Proulx + * Copyright (c) 2010-2019 EfficiOS Inc. and Linux Foundation * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -23,32 +23,60 @@ * SOFTWARE. */ -/* For bt_query_executor_status */ -#include +#ifndef __BT_IN_BABELTRACE_H +# error "Please include instead." +#endif -/* For bt_query_executor, bt_component_class, bt_value */ #include +#include #ifdef __cplusplus extern "C" { #endif extern -bt_query_executor *bt_query_executor_create(void); +bt_query_executor *bt_query_executor_create( + const bt_component_class *component_class, const char *object, + const bt_value *params); extern -bt_query_executor_status bt_query_executor_query( - bt_query_executor *query_executor, - const bt_component_class *component_class, - const char *object, const bt_value *params, - const bt_value **result); +bt_query_executor *bt_query_executor_create_with_method_data( + const bt_component_class *component_class, const char *object, + const bt_value *params, void *method_data); + +typedef enum bt_query_executor_query_status { + BT_QUERY_EXECUTOR_QUERY_STATUS_OK = __BT_FUNC_STATUS_OK, + BT_QUERY_EXECUTOR_QUERY_STATUS_AGAIN = __BT_FUNC_STATUS_AGAIN, + BT_QUERY_EXECUTOR_QUERY_STATUS_ERROR = __BT_FUNC_STATUS_ERROR, + BT_QUERY_EXECUTOR_QUERY_STATUS_MEMORY_ERROR = __BT_FUNC_STATUS_MEMORY_ERROR, + BT_QUERY_EXECUTOR_QUERY_STATUS_UNKNOWN_OBJECT = __BT_FUNC_STATUS_UNKNOWN_OBJECT, +} bt_query_executor_query_status; extern -bt_query_executor_status bt_query_executor_cancel( - bt_query_executor *query_executor); +bt_query_executor_query_status bt_query_executor_query( + bt_query_executor *query_executor, const bt_value **result); + +typedef enum bt_query_executor_add_interrupter_status { + BT_QUERY_EXECUTOR_ADD_INTERRUPTER_STATUS_OK = __BT_FUNC_STATUS_OK, + BT_QUERY_EXECUTOR_ADD_INTERRUPTER_STATUS_MEMORY_ERROR = __BT_FUNC_STATUS_MEMORY_ERROR, +} bt_query_executor_add_interrupter_status; + +extern bt_query_executor_add_interrupter_status +bt_query_executor_add_interrupter(bt_query_executor *query_executor, + const bt_interrupter *interrupter); + +extern void bt_query_executor_interrupt(bt_query_executor *query_executor); + +typedef enum bt_query_executor_set_logging_level_status { + BT_QUERY_EXECUTOR_SET_LOGGING_LEVEL_STATUS_OK = __BT_FUNC_STATUS_OK, +} bt_query_executor_set_logging_level_status; + +extern bt_query_executor_set_logging_level_status +bt_query_executor_set_logging_level(bt_query_executor *query_executor, + bt_logging_level logging_level); #ifdef __cplusplus } #endif -#endif /* BABELTRACE_GRAPH_QUERY_EXECUTOR_H */ +#endif /* BABELTRACE2_GRAPH_QUERY_EXECUTOR_H */