libcomps ..
Loading...
Searching...
No Matches
comps_docpackage.h
Go to the documentation of this file.
1/* libcomps - C alternative to yum.comps library
2 * Copyright (C) 2013 Jindrich Luza
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; either version 2 of the License, or
7 * any later version.
8 *
9 * This program is distributed in the hope that it will be useful, but
10 * WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License
15 * along with this program; if not, write to Free Software
16 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
17 * USA
18 */
19
20#ifndef COMPS_DOCPACKAGE_H
21#define COMPS_DOCPACKAGE_H
22
23#include "comps_utils.h"
24#include "comps_obj.h"
25#include "comps_log.h"
26
27#include "comps_validate.h"
28#include "comps_default.h"
29
33
36typedef enum {COMPS_PACKAGE_DEFAULT, COMPS_PACKAGE_OPTIONAL,
37 COMPS_PACKAGE_CONDITIONAL, COMPS_PACKAGE_MANDATORY,
38 COMPS_PACKAGE_UNKNOWN} COMPS_PackageType;
39
49
50
51//HEAD_COMPS_CREATE_u(docpackage, COMPS_DocGroupPackagePackage) /*comps_utils.h macro*/
52//HEAD_COMPS_COPY_u(docpackage, COMPS_DocGroupPackagePackage) /*comps_utils.h macro*/
53//HEAD_COMPS_DESTROY_u(docpackage, COMPS_DocGroupPackagePackage) /*comps_utils.h macro*/
54
55signed char comps_docpackage_cmp_u(COMPS_Object *pkg1, COMPS_Object *pkg2);
56char comps_docpackage_cmp_set(void *pkg1, void *pkg2);
57
64
72void comps_docpackage_set_name(COMPS_DocGroupPackage *pkg, char *name, char copy);
73
80
88void comps_docpackage_set_requires(COMPS_DocGroupPackage *pkg, char *requires, char copy);
89
96
105 bool unset);
106
111void comps_docpackage_set_type_i(COMPS_DocGroupPackage *pkg, int type, bool unset);
112
118
124 int basearchonly, bool unset);
125
131
132char __comps_docpackage_idcmp(void *pkg1, void *pkg2);
133COMPS_ObjList* comps_docpackage_arches(COMPS_DocGroupPackage *pkg);
134void comps_docpackage_set_arches(COMPS_DocGroupPackage *pkg,
135 COMPS_ObjList *arches);
136
137signed char comps_docpackage_xml(COMPS_DocGroupPackage *pkg,
138 xmlTextWriterPtr writer,
139 COMPS_Log *log, COMPS_XMLOptions *xml_options,
140 COMPS_DefaultsOptions *def_options);
141
142extern COMPS_ObjectInfo COMPS_DocGroupPackage_ObjInfo;
143extern COMPS_ValRuleGeneric* COMPS_DocGroupPackage_ValidateRules[];
144
145#endif
146
COMPS_Object * comps_docpackage_get_basearchonly(COMPS_DocGroupPackage *pkg)
void comps_docpackage_set_type_i(COMPS_DocGroupPackage *pkg, int type, bool unset)
COMPS_Object * comps_docpackage_get_type(COMPS_DocGroupPackage *pkg)
void comps_docpackage_set_basearchonly(COMPS_DocGroupPackage *pkg, int basearchonly, bool unset)
COMPS_Object * comps_docpackage_get_name(COMPS_DocGroupPackage *pkg)
void comps_docpackage_set_requires(COMPS_DocGroupPackage *pkg, char *requires, char copy)
const char * comps_docpackage_type_str(COMPS_PackageType type)
void comps_docpackage_set_type(COMPS_DocGroupPackage *pkg, COMPS_PackageType type, bool unset)
void comps_docpackage_set_name(COMPS_DocGroupPackage *pkg, char *name, char copy)
COMPS_PackageType
Definition comps_docpackage.h:36
COMPS_Object * comps_docpackage_get_requires(COMPS_DocGroupPackage *pkg)
COMPS_Object header file.
#define COMPS_Object_HEAD
Definition comps_obj.h:86
Definition comps_docpackage.h:41
COMPS_PackageType type
Definition comps_docpackage.h:43
COMPS_Str *COMPS_Num * basearchonly
Definition comps_docpackage.h:46
COMPS_Str * name
Definition comps_docpackage.h:44
Definition comps_obj.h:133
Definition comps_objlist.h:41
Definition comps_obj.h:102
Definition comps_obj.h:124
Definition comps_obj.h:143