diff options
Diffstat (limited to 'src/libical/icalparameter_cxx.h')
-rw-r--r-- | src/libical/icalparameter_cxx.h | 170 |
1 files changed, 170 insertions, 0 deletions
diff --git a/src/libical/icalparameter_cxx.h b/src/libical/icalparameter_cxx.h new file mode 100644 index 00000000..ab3893bc --- /dev/null +++ b/src/libical/icalparameter_cxx.h @@ -0,0 +1,170 @@ +/* -*- Mode: C++ -*- */ + +/** + * @file icalparameter_cxx.h + * @author fnguyen (12/10/01) + * @brief Definition of C++ Wrapper for icalparameter.c + * + * (C) COPYRIGHT 2001, Critical Path + + This program is free software; you can redistribute it and/or modify + it under the terms of either: + + The LGPL as published by the Free Software Foundation, version + 2.1, available at: http://www.fsf.org/copyleft/lesser.html + + Or: + + The Mozilla Public License Version 1.0. You may obtain a copy of + the License at http://www.mozilla.org/MPL/ + */ + + +#ifndef ICALPARAMETER_CXX_H +#define ICALPARAMETER_CXX_H + +extern "C" { +#include "ical.h" +}; + +#include "icptrholder.h" + +typedef char* string; // Will use the string library from STL + +class ICalParameter { +public: + ICalParameter() throw(icalerrorenum); + ICalParameter(const ICalParameter&) throw(icalerrorenum); + ICalParameter& operator=(const ICalParameter&) throw(icalerrorenum); + ~ICalParameter(); + + ICalParameter(icalparameter* v) throw(icalerrorenum); + + // Create from string of form "PARAMNAME=VALUE" + ICalParameter(string str) throw(icalerrorenum); + + // Create from just the value, the part after the "=" + ICalParameter(icalparameter_kind kind, string str) throw(icalerrorenum); + ICalParameter(icalparameter_kind kind) throw(icalerrorenum); + + operator icalparameter*() { return imp; } + + void detach() { + imp = NULL; + } + +public: + string as_ical_string() throw(icalerrorenum); + bool is_valid(); + icalparameter_kind isa( ); + int isa_parameter(void* param); + +public: + /* Acess the name of an X parameer */ + static void set_xname (ICalParameter ¶m, string v); + static string get_xname(ICalParameter ¶m); + static void set_xvalue (ICalParameter ¶m, string v); + static string get_xvalue(ICalParameter ¶m); + + /* Convert enumerations */ + static string kind_to_string(icalparameter_kind kind); + static icalparameter_kind string_to_kind(string str); + +public: + /* DELEGATED-FROM */ + string get_delegatedfrom(); + void set_delegatedfrom(string v); + + /* RELATED */ + icalparameter_related get_related(); + void set_related(icalparameter_related v); + + /* SENT-BY */ + string get_sentby(); + void set_sentby(string v); + + /* LANGUAGE */ + string get_language(); + void set_language(string v); + + /* RELTYPE */ + icalparameter_reltype get_reltype(); + void set_reltype(icalparameter_reltype v); + + /* ENCODING */ + icalparameter_encoding get_encoding(); + void set_encoding(icalparameter_encoding v); + + /* ALTREP */ + string get_altrep(); + void set_altrep(string v); + + /* FMTTYPE */ + string get_fmttype(); + void set_fmttype(string v); + + /* FBTYPE */ + icalparameter_fbtype get_fbtype(); + void set_fbtype(icalparameter_fbtype v); + + /* RSVP */ + icalparameter_rsvp get_rsvp(); + void set_rsvp(icalparameter_rsvp v); + + /* RANGE */ + icalparameter_range get_range(); + void set_range(icalparameter_range v); + + /* DELEGATED-TO */ + string get_delegatedto(); + void set_delegatedto(string v); + + /* CN */ + string get_cn(); + void set_cn(string v); + + /* ROLE */ + icalparameter_role get_role(); + void set_role(icalparameter_role v); + + /* X-LIC-COMPARETYPE */ + icalparameter_xliccomparetype get_xliccomparetype(); + void set_xliccomparetype(icalparameter_xliccomparetype v); + + /* PARTSTAT */ + icalparameter_partstat get_partstat(); + void set_partstat(icalparameter_partstat v); + + /* X-LIC-ERRORTYPE */ + icalparameter_xlicerrortype get_xlicerrortype(); + void set_xlicerrortype(icalparameter_xlicerrortype v); + + /* MEMBER */ + string get_member(); + void set_member(string v); + + /* X */ + string get_x(); + void set_x(string v); + + /* CUTYPE */ + icalparameter_cutype get_cutype(); + void set_cutype(icalparameter_cutype v); + + /* TZID */ + string get_tzid(); + void set_tzid(string v); + + /* VALUE */ + icalparameter_value get_value(); + void set_value(icalparameter_value v); + + /* DIR */ + string get_dir(); + void set_dir(string v); + +private: + icalparameter* imp; +}; + +#endif |