icalderivedvalue.h 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422
  1. /*======================================================================
  2. FILE: icalvalue.h
  3. CREATOR: eric 20 March 1999
  4. (C) COPYRIGHT 2000, Eric Busboom, http://www.softwarestudio.org
  5. This program is free software; you can redistribute it and/or modify
  6. it under the terms of either:
  7. The LGPL as published by the Free Software Foundation, version
  8. 2.1, available at: http://www.fsf.org/copyleft/lesser.html
  9. Or:
  10. The Mozilla Public License Version 1.0. You may obtain a copy of
  11. the License at http://www.mozilla.org/MPL/
  12. ======================================================================*/
  13. #ifndef ICALDERIVEDVALUE_H
  14. #define ICALDERIVEDVALUE_H
  15. #include "libical_ical_export.h"
  16. #include "icalattach.h"
  17. #include "icalrecur.h"
  18. #include "icaltypes.h"
  19. typedef struct icalvalue_impl icalvalue;
  20. LIBICAL_ICAL_EXPORT void icalvalue_set_x(icalvalue* value, const char* v);
  21. LIBICAL_ICAL_EXPORT icalvalue* icalvalue_new_x(const char* v);
  22. LIBICAL_ICAL_EXPORT const char* icalvalue_get_x(const icalvalue* value);
  23. LIBICAL_ICAL_EXPORT icalvalue* icalvalue_new_recur (struct icalrecurrencetype v);
  24. LIBICAL_ICAL_EXPORT void icalvalue_set_recur(icalvalue* value, struct icalrecurrencetype v);
  25. LIBICAL_ICAL_EXPORT struct icalrecurrencetype icalvalue_get_recur(const icalvalue* value);
  26. LIBICAL_ICAL_EXPORT icalvalue* icalvalue_new_trigger (struct icaltriggertype v);
  27. LIBICAL_ICAL_EXPORT void icalvalue_set_trigger(icalvalue* value, struct icaltriggertype v);
  28. LIBICAL_ICAL_EXPORT struct icaltriggertype icalvalue_get_trigger(const icalvalue* value);
  29. LIBICAL_ICAL_EXPORT icalvalue* icalvalue_new_datetime(struct icaltimetype v);
  30. LIBICAL_ICAL_EXPORT struct icaltimetype icalvalue_get_datetime(const icalvalue* value);
  31. LIBICAL_ICAL_EXPORT void icalvalue_set_datetime(icalvalue* value, struct icaltimetype v);
  32. LIBICAL_ICAL_EXPORT icalvalue* icalvalue_new_datetimeperiod (struct icaldatetimeperiodtype v);
  33. LIBICAL_ICAL_EXPORT void icalvalue_set_datetimeperiod(icalvalue* value,
  34. struct icaldatetimeperiodtype v);
  35. LIBICAL_ICAL_EXPORT struct icaldatetimeperiodtype icalvalue_get_datetimeperiod(const icalvalue* value);
  36. LIBICAL_ICAL_EXPORT icalvalue* icalvalue_new_geo(struct icalgeotype v);
  37. LIBICAL_ICAL_EXPORT struct icalgeotype icalvalue_get_geo(const icalvalue* value);
  38. LIBICAL_ICAL_EXPORT void icalvalue_set_geo(icalvalue* value, struct icalgeotype v);
  39. LIBICAL_ICAL_EXPORT icalvalue *icalvalue_new_attach (icalattach *attach);
  40. LIBICAL_ICAL_EXPORT void icalvalue_set_attach (icalvalue *value, icalattach *attach);
  41. LIBICAL_ICAL_EXPORT icalattach *icalvalue_get_attach (const icalvalue *value);
  42. LIBICAL_ICAL_EXPORT void icalvalue_reset_kind(icalvalue* value);
  43. typedef enum icalvalue_kind {
  44. ICAL_ANY_VALUE=5000,
  45. ICAL_ACTION_VALUE=5027,
  46. ICAL_ATTACH_VALUE=5003,
  47. ICAL_BINARY_VALUE=5011,
  48. ICAL_BOOLEAN_VALUE=5021,
  49. ICAL_BUSYTYPE_VALUE=5032,
  50. ICAL_CALADDRESS_VALUE=5023,
  51. ICAL_CARLEVEL_VALUE=5016,
  52. ICAL_CLASS_VALUE=5019,
  53. ICAL_CMD_VALUE=5010,
  54. ICAL_DATE_VALUE=5002,
  55. ICAL_DATETIME_VALUE=5028,
  56. ICAL_DATETIMEPERIOD_VALUE=5015,
  57. ICAL_DURATION_VALUE=5020,
  58. ICAL_FLOAT_VALUE=5013,
  59. ICAL_GEO_VALUE=5004,
  60. ICAL_INTEGER_VALUE=5017,
  61. ICAL_METHOD_VALUE=5030,
  62. ICAL_PERIOD_VALUE=5014,
  63. ICAL_POLLCOMPLETION_VALUE=5034,
  64. ICAL_POLLMODE_VALUE=5033,
  65. ICAL_QUERY_VALUE=5001,
  66. ICAL_QUERYLEVEL_VALUE=5012,
  67. ICAL_RECUR_VALUE=5026,
  68. ICAL_REQUESTSTATUS_VALUE=5009,
  69. ICAL_STATUS_VALUE=5005,
  70. ICAL_STRING_VALUE=5007,
  71. ICAL_TASKMODE_VALUE=5035,
  72. ICAL_TEXT_VALUE=5008,
  73. ICAL_TRANSP_VALUE=5006,
  74. ICAL_TRIGGER_VALUE=5024,
  75. ICAL_URI_VALUE=5018,
  76. ICAL_UTCOFFSET_VALUE=5029,
  77. ICAL_X_VALUE=5022,
  78. ICAL_XLICCLASS_VALUE=5025,
  79. ICAL_NO_VALUE=5031
  80. } icalvalue_kind ;
  81. #define ICALPROPERTY_FIRST_ENUM 10000
  82. typedef enum icalproperty_action {
  83. ICAL_ACTION_X = 10000,
  84. ICAL_ACTION_AUDIO = 10001,
  85. ICAL_ACTION_DISPLAY = 10002,
  86. ICAL_ACTION_EMAIL = 10003,
  87. ICAL_ACTION_PROCEDURE = 10004,
  88. ICAL_ACTION_NONE = 10099
  89. } icalproperty_action;
  90. typedef enum icalproperty_busytype {
  91. ICAL_BUSYTYPE_X = 10100,
  92. ICAL_BUSYTYPE_BUSY = 10101,
  93. ICAL_BUSYTYPE_BUSYUNAVAILABLE = 10102,
  94. ICAL_BUSYTYPE_BUSYTENTATIVE = 10103,
  95. ICAL_BUSYTYPE_NONE = 10199
  96. } icalproperty_busytype;
  97. typedef enum icalproperty_carlevel {
  98. ICAL_CARLEVEL_X = 10200,
  99. ICAL_CARLEVEL_CARNONE = 10201,
  100. ICAL_CARLEVEL_CARMIN = 10202,
  101. ICAL_CARLEVEL_CARFULL1 = 10203,
  102. ICAL_CARLEVEL_NONE = 10299
  103. } icalproperty_carlevel;
  104. typedef enum icalproperty_class {
  105. ICAL_CLASS_X = 10300,
  106. ICAL_CLASS_PUBLIC = 10301,
  107. ICAL_CLASS_PRIVATE = 10302,
  108. ICAL_CLASS_CONFIDENTIAL = 10303,
  109. ICAL_CLASS_NONE = 10399
  110. } icalproperty_class;
  111. typedef enum icalproperty_cmd {
  112. ICAL_CMD_X = 10400,
  113. ICAL_CMD_ABORT = 10401,
  114. ICAL_CMD_CONTINUE = 10402,
  115. ICAL_CMD_CREATE = 10403,
  116. ICAL_CMD_DELETE = 10404,
  117. ICAL_CMD_GENERATEUID = 10405,
  118. ICAL_CMD_GETCAPABILITY = 10406,
  119. ICAL_CMD_IDENTIFY = 10407,
  120. ICAL_CMD_MODIFY = 10408,
  121. ICAL_CMD_MOVE = 10409,
  122. ICAL_CMD_REPLY = 10410,
  123. ICAL_CMD_SEARCH = 10411,
  124. ICAL_CMD_SETLOCALE = 10412,
  125. ICAL_CMD_NONE = 10499
  126. } icalproperty_cmd;
  127. typedef enum icalproperty_method {
  128. ICAL_METHOD_X = 10500,
  129. ICAL_METHOD_PUBLISH = 10501,
  130. ICAL_METHOD_REQUEST = 10502,
  131. ICAL_METHOD_REPLY = 10503,
  132. ICAL_METHOD_ADD = 10504,
  133. ICAL_METHOD_CANCEL = 10505,
  134. ICAL_METHOD_REFRESH = 10506,
  135. ICAL_METHOD_COUNTER = 10507,
  136. ICAL_METHOD_DECLINECOUNTER = 10508,
  137. ICAL_METHOD_CREATE = 10509,
  138. ICAL_METHOD_READ = 10510,
  139. ICAL_METHOD_RESPONSE = 10511,
  140. ICAL_METHOD_MOVE = 10512,
  141. ICAL_METHOD_MODIFY = 10513,
  142. ICAL_METHOD_GENERATEUID = 10514,
  143. ICAL_METHOD_DELETE = 10515,
  144. ICAL_METHOD_POLLSTATUS = 10516,
  145. ICAL_METHOD_NONE = 10599
  146. } icalproperty_method;
  147. typedef enum icalproperty_pollcompletion {
  148. ICAL_POLLCOMPLETION_X = 10600,
  149. ICAL_POLLCOMPLETION_SERVER = 10601,
  150. ICAL_POLLCOMPLETION_SERVERSUBMIT = 10602,
  151. ICAL_POLLCOMPLETION_SERVERCHOICE = 10603,
  152. ICAL_POLLCOMPLETION_CLIENT = 10604,
  153. ICAL_POLLCOMPLETION_NONE = 10699
  154. } icalproperty_pollcompletion;
  155. typedef enum icalproperty_pollmode {
  156. ICAL_POLLMODE_X = 10700,
  157. ICAL_POLLMODE_BASIC = 10701,
  158. ICAL_POLLMODE_NONE = 10799
  159. } icalproperty_pollmode;
  160. typedef enum icalproperty_querylevel {
  161. ICAL_QUERYLEVEL_X = 10800,
  162. ICAL_QUERYLEVEL_CALQL1 = 10801,
  163. ICAL_QUERYLEVEL_CALQLNONE = 10802,
  164. ICAL_QUERYLEVEL_NONE = 10899
  165. } icalproperty_querylevel;
  166. typedef enum icalproperty_status {
  167. ICAL_STATUS_X = 10900,
  168. ICAL_STATUS_TENTATIVE = 10901,
  169. ICAL_STATUS_CONFIRMED = 10902,
  170. ICAL_STATUS_COMPLETED = 10903,
  171. ICAL_STATUS_NEEDSACTION = 10904,
  172. ICAL_STATUS_CANCELLED = 10905,
  173. ICAL_STATUS_INPROCESS = 10906,
  174. ICAL_STATUS_DRAFT = 10907,
  175. ICAL_STATUS_FINAL = 10908,
  176. ICAL_STATUS_SUBMITTED = 10909,
  177. ICAL_STATUS_PENDING = 10910,
  178. ICAL_STATUS_FAILED = 10911,
  179. ICAL_STATUS_NONE = 10999
  180. } icalproperty_status;
  181. typedef enum icalproperty_taskmode {
  182. ICAL_TASKMODE_X = 11200,
  183. ICAL_TASKMODE_AUTOMATICCOMPLETION = 11201,
  184. ICAL_TASKMODE_AUTOMATICFAILURE = 11202,
  185. ICAL_TASKMODE_AUTOMATICSTATUS = 11203,
  186. ICAL_TASKMODE_NONE = 11299
  187. } icalproperty_taskmode;
  188. typedef enum icalproperty_transp {
  189. ICAL_TRANSP_X = 11000,
  190. ICAL_TRANSP_OPAQUE = 11001,
  191. ICAL_TRANSP_OPAQUENOCONFLICT = 11002,
  192. ICAL_TRANSP_TRANSPARENT = 11003,
  193. ICAL_TRANSP_TRANSPARENTNOCONFLICT = 11004,
  194. ICAL_TRANSP_NONE = 11099
  195. } icalproperty_transp;
  196. typedef enum icalproperty_xlicclass {
  197. ICAL_XLICCLASS_X = 11100,
  198. ICAL_XLICCLASS_PUBLISHNEW = 11101,
  199. ICAL_XLICCLASS_PUBLISHUPDATE = 11102,
  200. ICAL_XLICCLASS_PUBLISHFREEBUSY = 11103,
  201. ICAL_XLICCLASS_REQUESTNEW = 11104,
  202. ICAL_XLICCLASS_REQUESTUPDATE = 11105,
  203. ICAL_XLICCLASS_REQUESTRESCHEDULE = 11106,
  204. ICAL_XLICCLASS_REQUESTDELEGATE = 11107,
  205. ICAL_XLICCLASS_REQUESTNEWORGANIZER = 11108,
  206. ICAL_XLICCLASS_REQUESTFORWARD = 11109,
  207. ICAL_XLICCLASS_REQUESTSTATUS = 11110,
  208. ICAL_XLICCLASS_REQUESTFREEBUSY = 11111,
  209. ICAL_XLICCLASS_REPLYACCEPT = 11112,
  210. ICAL_XLICCLASS_REPLYDECLINE = 11113,
  211. ICAL_XLICCLASS_REPLYDELEGATE = 11114,
  212. ICAL_XLICCLASS_REPLYCRASHERACCEPT = 11115,
  213. ICAL_XLICCLASS_REPLYCRASHERDECLINE = 11116,
  214. ICAL_XLICCLASS_ADDINSTANCE = 11117,
  215. ICAL_XLICCLASS_CANCELEVENT = 11118,
  216. ICAL_XLICCLASS_CANCELINSTANCE = 11119,
  217. ICAL_XLICCLASS_CANCELALL = 11120,
  218. ICAL_XLICCLASS_REFRESH = 11121,
  219. ICAL_XLICCLASS_COUNTER = 11122,
  220. ICAL_XLICCLASS_DECLINECOUNTER = 11123,
  221. ICAL_XLICCLASS_MALFORMED = 11124,
  222. ICAL_XLICCLASS_OBSOLETE = 11125,
  223. ICAL_XLICCLASS_MISSEQUENCED = 11126,
  224. ICAL_XLICCLASS_UNKNOWN = 11127,
  225. ICAL_XLICCLASS_NONE = 11199
  226. } icalproperty_xlicclass;
  227. #define ICALPROPERTY_LAST_ENUM 11300
  228. /* ACTION */
  229. LIBICAL_ICAL_EXPORT icalvalue* icalvalue_new_action(enum icalproperty_action v);
  230. LIBICAL_ICAL_EXPORT enum icalproperty_action icalvalue_get_action(const icalvalue* value);
  231. LIBICAL_ICAL_EXPORT void icalvalue_set_action(icalvalue* value, enum icalproperty_action v);
  232. /* BINARY */
  233. LIBICAL_ICAL_EXPORT icalvalue* icalvalue_new_binary(const char* v);
  234. LIBICAL_ICAL_EXPORT const char* icalvalue_get_binary(const icalvalue* value);
  235. LIBICAL_ICAL_EXPORT void icalvalue_set_binary(icalvalue* value, const char* v);
  236. /* BOOLEAN */
  237. LIBICAL_ICAL_EXPORT icalvalue* icalvalue_new_boolean(int v);
  238. LIBICAL_ICAL_EXPORT int icalvalue_get_boolean(const icalvalue* value);
  239. LIBICAL_ICAL_EXPORT void icalvalue_set_boolean(icalvalue* value, int v);
  240. /* BUSYTYPE */
  241. LIBICAL_ICAL_EXPORT icalvalue* icalvalue_new_busytype(enum icalproperty_busytype v);
  242. LIBICAL_ICAL_EXPORT enum icalproperty_busytype icalvalue_get_busytype(const icalvalue* value);
  243. LIBICAL_ICAL_EXPORT void icalvalue_set_busytype(icalvalue* value, enum icalproperty_busytype v);
  244. /* CAL-ADDRESS */
  245. LIBICAL_ICAL_EXPORT icalvalue* icalvalue_new_caladdress(const char* v);
  246. LIBICAL_ICAL_EXPORT const char* icalvalue_get_caladdress(const icalvalue* value);
  247. LIBICAL_ICAL_EXPORT void icalvalue_set_caladdress(icalvalue* value, const char* v);
  248. /* CAR-LEVEL */
  249. LIBICAL_ICAL_EXPORT icalvalue* icalvalue_new_carlevel(enum icalproperty_carlevel v);
  250. LIBICAL_ICAL_EXPORT enum icalproperty_carlevel icalvalue_get_carlevel(const icalvalue* value);
  251. LIBICAL_ICAL_EXPORT void icalvalue_set_carlevel(icalvalue* value, enum icalproperty_carlevel v);
  252. /* CMD */
  253. LIBICAL_ICAL_EXPORT icalvalue* icalvalue_new_cmd(enum icalproperty_cmd v);
  254. LIBICAL_ICAL_EXPORT enum icalproperty_cmd icalvalue_get_cmd(const icalvalue* value);
  255. LIBICAL_ICAL_EXPORT void icalvalue_set_cmd(icalvalue* value, enum icalproperty_cmd v);
  256. /* DATE */
  257. LIBICAL_ICAL_EXPORT icalvalue* icalvalue_new_date(struct icaltimetype v);
  258. LIBICAL_ICAL_EXPORT struct icaltimetype icalvalue_get_date(const icalvalue* value);
  259. LIBICAL_ICAL_EXPORT void icalvalue_set_date(icalvalue* value, struct icaltimetype v);
  260. /* DURATION */
  261. LIBICAL_ICAL_EXPORT icalvalue* icalvalue_new_duration(struct icaldurationtype v);
  262. LIBICAL_ICAL_EXPORT struct icaldurationtype icalvalue_get_duration(const icalvalue* value);
  263. LIBICAL_ICAL_EXPORT void icalvalue_set_duration(icalvalue* value, struct icaldurationtype v);
  264. /* FLOAT */
  265. LIBICAL_ICAL_EXPORT icalvalue* icalvalue_new_float(float v);
  266. LIBICAL_ICAL_EXPORT float icalvalue_get_float(const icalvalue* value);
  267. LIBICAL_ICAL_EXPORT void icalvalue_set_float(icalvalue* value, float v);
  268. /* INTEGER */
  269. LIBICAL_ICAL_EXPORT icalvalue* icalvalue_new_integer(int v);
  270. LIBICAL_ICAL_EXPORT int icalvalue_get_integer(const icalvalue* value);
  271. LIBICAL_ICAL_EXPORT void icalvalue_set_integer(icalvalue* value, int v);
  272. /* METHOD */
  273. LIBICAL_ICAL_EXPORT icalvalue* icalvalue_new_method(enum icalproperty_method v);
  274. LIBICAL_ICAL_EXPORT enum icalproperty_method icalvalue_get_method(const icalvalue* value);
  275. LIBICAL_ICAL_EXPORT void icalvalue_set_method(icalvalue* value, enum icalproperty_method v);
  276. /* PERIOD */
  277. LIBICAL_ICAL_EXPORT icalvalue* icalvalue_new_period(struct icalperiodtype v);
  278. LIBICAL_ICAL_EXPORT struct icalperiodtype icalvalue_get_period(const icalvalue* value);
  279. LIBICAL_ICAL_EXPORT void icalvalue_set_period(icalvalue* value, struct icalperiodtype v);
  280. /* POLLCOMPLETION */
  281. LIBICAL_ICAL_EXPORT icalvalue* icalvalue_new_pollcompletion(enum icalproperty_pollcompletion v);
  282. LIBICAL_ICAL_EXPORT enum icalproperty_pollcompletion icalvalue_get_pollcompletion(const icalvalue* value);
  283. LIBICAL_ICAL_EXPORT void icalvalue_set_pollcompletion(icalvalue* value, enum icalproperty_pollcompletion v);
  284. /* POLLMODE */
  285. LIBICAL_ICAL_EXPORT icalvalue* icalvalue_new_pollmode(enum icalproperty_pollmode v);
  286. LIBICAL_ICAL_EXPORT enum icalproperty_pollmode icalvalue_get_pollmode(const icalvalue* value);
  287. LIBICAL_ICAL_EXPORT void icalvalue_set_pollmode(icalvalue* value, enum icalproperty_pollmode v);
  288. /* QUERY */
  289. LIBICAL_ICAL_EXPORT icalvalue* icalvalue_new_query(const char* v);
  290. LIBICAL_ICAL_EXPORT const char* icalvalue_get_query(const icalvalue* value);
  291. LIBICAL_ICAL_EXPORT void icalvalue_set_query(icalvalue* value, const char* v);
  292. /* QUERY-LEVEL */
  293. LIBICAL_ICAL_EXPORT icalvalue* icalvalue_new_querylevel(enum icalproperty_querylevel v);
  294. LIBICAL_ICAL_EXPORT enum icalproperty_querylevel icalvalue_get_querylevel(const icalvalue* value);
  295. LIBICAL_ICAL_EXPORT void icalvalue_set_querylevel(icalvalue* value, enum icalproperty_querylevel v);
  296. /* REQUEST-STATUS */
  297. LIBICAL_ICAL_EXPORT icalvalue* icalvalue_new_requeststatus(struct icalreqstattype v);
  298. LIBICAL_ICAL_EXPORT struct icalreqstattype icalvalue_get_requeststatus(const icalvalue* value);
  299. LIBICAL_ICAL_EXPORT void icalvalue_set_requeststatus(icalvalue* value, struct icalreqstattype v);
  300. /* STATUS */
  301. LIBICAL_ICAL_EXPORT icalvalue* icalvalue_new_status(enum icalproperty_status v);
  302. LIBICAL_ICAL_EXPORT enum icalproperty_status icalvalue_get_status(const icalvalue* value);
  303. LIBICAL_ICAL_EXPORT void icalvalue_set_status(icalvalue* value, enum icalproperty_status v);
  304. /* STRING */
  305. LIBICAL_ICAL_EXPORT icalvalue* icalvalue_new_string(const char* v);
  306. LIBICAL_ICAL_EXPORT const char* icalvalue_get_string(const icalvalue* value);
  307. LIBICAL_ICAL_EXPORT void icalvalue_set_string(icalvalue* value, const char* v);
  308. /* TASKMODE */
  309. LIBICAL_ICAL_EXPORT icalvalue* icalvalue_new_taskmode(enum icalproperty_taskmode v);
  310. LIBICAL_ICAL_EXPORT enum icalproperty_taskmode icalvalue_get_taskmode(const icalvalue* value);
  311. LIBICAL_ICAL_EXPORT void icalvalue_set_taskmode(icalvalue* value, enum icalproperty_taskmode v);
  312. /* TEXT */
  313. LIBICAL_ICAL_EXPORT icalvalue* icalvalue_new_text(const char* v);
  314. LIBICAL_ICAL_EXPORT const char* icalvalue_get_text(const icalvalue* value);
  315. LIBICAL_ICAL_EXPORT void icalvalue_set_text(icalvalue* value, const char* v);
  316. /* TRANSP */
  317. LIBICAL_ICAL_EXPORT icalvalue* icalvalue_new_transp(enum icalproperty_transp v);
  318. LIBICAL_ICAL_EXPORT enum icalproperty_transp icalvalue_get_transp(const icalvalue* value);
  319. LIBICAL_ICAL_EXPORT void icalvalue_set_transp(icalvalue* value, enum icalproperty_transp v);
  320. /* URI */
  321. LIBICAL_ICAL_EXPORT icalvalue* icalvalue_new_uri(const char* v);
  322. LIBICAL_ICAL_EXPORT const char* icalvalue_get_uri(const icalvalue* value);
  323. LIBICAL_ICAL_EXPORT void icalvalue_set_uri(icalvalue* value, const char* v);
  324. /* UTC-OFFSET */
  325. LIBICAL_ICAL_EXPORT icalvalue* icalvalue_new_utcoffset(int v);
  326. LIBICAL_ICAL_EXPORT int icalvalue_get_utcoffset(const icalvalue* value);
  327. LIBICAL_ICAL_EXPORT void icalvalue_set_utcoffset(icalvalue* value, int v);
  328. /* X-LIC-CLASS */
  329. LIBICAL_ICAL_EXPORT icalvalue* icalvalue_new_xlicclass(enum icalproperty_xlicclass v);
  330. LIBICAL_ICAL_EXPORT enum icalproperty_xlicclass icalvalue_get_xlicclass(const icalvalue* value);
  331. LIBICAL_ICAL_EXPORT void icalvalue_set_xlicclass(icalvalue* value, enum icalproperty_xlicclass v);
  332. #endif /*ICALVALUE_H*/
  333. LIBICAL_ICAL_EXPORT icalvalue* icalvalue_new_class(enum icalproperty_class v);
  334. LIBICAL_ICAL_EXPORT enum icalproperty_class icalvalue_get_class(const icalvalue* value);
  335. LIBICAL_ICAL_EXPORT void icalvalue_set_class(icalvalue* value, enum icalproperty_class v);