Libical API Documentation  3.1
icalbdbset_cxx.h
Go to the documentation of this file.
1 
20 #ifndef ICALBDBSET_CXX_H
21 #define ICALBDBSET_CXX_H
22 
23 #include "libical_icalss_export.h"
24 
25 #include <string>
26 
27 namespace LibICal
28 {
29 
30  class VComponent;
31 
32  class LIBICAL_ICALSS_EXPORT ICalBDBSet
33  {
34  public:
35 
36  ICalBDBSet();
37  ICalBDBSet(const ICalBDBSet &);
38  ICalBDBSet(const std::string &path, int flags);
39  ICalBDBSet operator=(const ICalBDBSet &);
40  ~ICalBDBSet();
41 
42  public:
43 
44  void free();
45  std::string path();
46 
47  icalerrorenum add_component(VComponent *child);
48  icalerrorenum remove_component(VComponent *child);
49  int count_components(icalcomponent_kind kind);
50 
51  // Restrict the component returned by icalbdbset_first, _next to those
52  // that pass the gauge. _clear removes the gauge
53  icalerrorenum select(icalgauge *gauge);
54  void clear();
55 
56  // Get and search for a component by uid
57  VComponent *fetch(std::string &uid);
58  VComponent *fetch_match(icalcomponent *c);
59  int has_uid(std::string &uid);
60 
61  // Iterate through components. If a gauge has been defined, these
62  // will skip over components that do not pass the gauge
63  VComponent *get_current_component();
64  VComponent *get_first_component();
65  VComponent *get_next_component();
66 
67  VComponent *get_component();
68 
69  };
70 
71 } // namespace LibICal
72 
73 #endif
Definition: icalbdbset_cxx.h:33
A class wrapping the libical icalcomponent functions.
Definition: vcomponent_cxx.h:48
icalerrorenum
Represents the different types of errors that can be triggered in libical.
Definition: icalerror.h:76
Definition: icalcomponent.c:36
Definition: icalgaugeimpl.h:55