00001 /* 00002 Copyright 2016 Otavio Rodolfo Piske 00003 00004 Licensed under the Apache License, Version 2.0 (the "License"); 00005 you may not use this file except in compliance with the License. 00006 You may obtain a copy of the License at 00007 00008 http://www.apache.org/licenses/LICENSE-2.0 00009 00010 Unless required by applicable law or agreed to in writing, software 00011 distributed under the License is distributed on an "AS IS" BASIS, 00012 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 00013 See the License for the specific language governing permissions and 00014 limitations under the License. 00015 */ 00016 #ifndef GRU_COLLECTION_CALLBACKS_H 00017 #define GRU_COLLECTION_CALLBACKS_H 00018 00019 #include <stdbool.h> 00020 00021 #include "gru_node_info.h" 00022 00023 #ifdef __cplusplus 00024 extern "C" { 00025 #endif 00026 00030 typedef bool (*compare_function_t)(const void *, const void *data, void *result); 00031 00035 typedef void (*handle_function_t)(const void *, void *); 00036 00040 typedef void (*handle_function_info_t)(const void *, gru_node_info_t info, void *); 00041 00042 typedef handle_function_t tree_callback_fn; 00043 00044 #ifdef __cplusplus 00045 } 00046 #endif 00047 00048 #endif /* GRU_COLLECTION_CALLBACKS_H */