Added compiled ASN.1 C files.
[yaz-moved-to-github.git] / include / yaz / z-date.h
diff --git a/include/yaz/z-date.h b/include/yaz/z-date.h
new file mode 100644 (file)
index 0000000..efa27a0
--- /dev/null
@@ -0,0 +1,134 @@
+/* YC 0.2: Tue Feb 29 16:45:14 CET 2000 */
+/* Module-H UserInfoFormat-dateTime */
+
+#ifndef z_date_H
+#define z_date_H
+
+#include <yaz/odr.h>
+#include <yaz/z-core.h>
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef struct Z_DateTime Z_DateTime;
+YAZ_EXPORT int z_DateTime (ODR o, Z_DateTime **p, int opt, const char *name);
+
+typedef struct Z_DateMonthAndDay Z_DateMonthAndDay;
+YAZ_EXPORT int z_DateMonthAndDay (ODR o, Z_DateMonthAndDay **p, int opt, const char *name);
+
+typedef struct Z_DateQuarter Z_DateQuarter;
+YAZ_EXPORT int z_DateQuarter (ODR o, Z_DateQuarter **p, int opt, const char *name);
+
+typedef struct Z_DateSeason Z_DateSeason;
+YAZ_EXPORT int z_DateSeason (ODR o, Z_DateSeason **p, int opt, const char *name);
+
+typedef struct Z_Era Z_Era;
+YAZ_EXPORT int z_Era (ODR o, Z_Era **p, int opt, const char *name);
+
+typedef struct Z_DateFlags Z_DateFlags;
+YAZ_EXPORT int z_DateFlags (ODR o, Z_DateFlags **p, int opt, const char *name);
+
+typedef struct Z_Date Z_Date;
+YAZ_EXPORT int z_Date (ODR o, Z_Date **p, int opt, const char *name);
+
+typedef struct Z_Time Z_Time;
+YAZ_EXPORT int z_Time (ODR o, Z_Time **p, int opt, const char *name);
+#ifdef __cplusplus
+}
+#endif
+#ifdef __cplusplus
+extern "C" {
+#endif
+struct Z_DateTime {
+       Z_Date *date; /* OPT */
+       Z_Time *time; /* OPT */
+};
+
+struct Z_DateMonthAndDay {
+       int *month;
+       int *day; /* OPT */
+};
+
+struct Z_DateQuarter {
+       int which;
+       union {
+               Odr_null *first;
+               Odr_null *second;
+               Odr_null *third;
+               Odr_null *fourth;
+#define Z_DateQuarter_first 1
+#define Z_DateQuarter_second 2
+#define Z_DateQuarter_third 3
+#define Z_DateQuarter_fourth 4
+       } u;
+};
+
+struct Z_DateSeason {
+       int which;
+       union {
+               Odr_null *winter;
+               Odr_null *spring;
+               Odr_null *summer;
+               Odr_null *autumn;
+#define Z_DateSeason_winter 1
+#define Z_DateSeason_spring 2
+#define Z_DateSeason_summer 3
+#define Z_DateSeason_autumn 4
+       } u;
+};
+
+struct Z_Era {
+       int which;
+       union {
+               Odr_null *decade;
+               Odr_null *century;
+               Odr_null *millennium;
+#define Z_Era_decade 1
+#define Z_Era_century 2
+#define Z_Era_millennium 3
+       } u;
+};
+
+struct Z_DateFlags {
+       Odr_null *circa; /* OPT */
+       Z_Era *era; /* OPT */
+};
+
+struct Z_Date {
+       int *year;
+       int which;
+       union {
+               Z_DateMonthAndDay *monthAndDay;
+               int *julianDay;
+               int *weekNumber;
+               Z_DateQuarter *quarter;
+               Z_DateSeason *season;
+#define Z_Date_monthAndDay 1
+#define Z_Date_julianDay 2
+#define Z_Date_weekNumber 3
+#define Z_Date_quarter 4
+#define Z_Date_season 5
+       } u; /* OPT */
+       Z_DateFlags *flags; /* OPT */
+};
+
+struct Z_Time {
+       int *hour;
+       int *minute; /* OPT */
+       int *second; /* OPT */
+       Z_IntUnit *partOfSecond; /* OPT */
+       int which;
+       union {
+               Odr_null *local;
+               Odr_null *utc;
+               int *utcOffset;
+#define Z_Time_local 1
+#define Z_Time_utc 2
+#define Z_Time_utcOffset 3
+       } u;
+};
+
+#ifdef __cplusplus
+}
+#endif
+#endif