1 /* 2 * Copyright (C) 2012-2018 Red Hat, Inc. 3 * 4 * Licensed under the GNU Lesser General Public License Version 2.1 5 * 6 * This library is free software; you can redistribute it and/or 7 * modify it under the terms of the GNU Lesser General Public 8 * License as published by the Free Software Foundation; either 9 * version 2.1 of the License, or (at your option) any later version. 10 * 11 * This library is distributed in the hope that it will be useful, 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14 * Lesser General Public License for more details. 15 * 16 * You should have received a copy of the GNU Lesser General Public 17 * License along with this library; if not, write to the Free Software 18 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 19 */ 20 21 #ifndef HY_SELECTOR_H 22 #define HY_SELECTOR_H 23 24 #include <glib.h> 25 26 #include "dnf-sack.h" 27 #include "hy-types.h" 28 29 #ifdef __cplusplus 30 extern "C" { 31 #endif 32 33 HySelector hy_selector_create(DnfSack *sack); 34 void hy_selector_free(HySelector sltr); 35 int hy_selector_pkg_set(HySelector sltr, DnfPackageSet* pset); 36 int hy_selector_set(HySelector sltr, int keyname, int cmp_type, 37 const char *match); 38 GPtrArray *hy_selector_matches(HySelector sltr); 39 40 #ifdef __cplusplus 41 } 42 #endif 43 44 G_DEFINE_AUTO_CLEANUP_FREE_FUNC(HySelector, hy_selector_free, NULL) 45 46 #endif 47