1 //------------------------------------------------------------------------------
2 // <auto-generated />
3 //
4 // This file was automatically generated by SWIG (http://www.swig.org).
5 // Version 4.0.2
6 //
7 // Do not make changes to this file unless you know what you are doing--modify
8 // the SWIG interface file instead.
9 //------------------------------------------------------------------------------
10 
11 namespace libsbml {
12 
13  using System;
14  using System.Runtime.InteropServices;
15 
16 /**
17  * @sbmlpackage{core}
18  *
19 @htmlinclude pkg-marker-core.html A MIRIAM-compliant date representation.
20  *
21  * @htmlinclude not-sbml-warning.html
22  *
23  * A Date object stores a reasonably complete representation of date and
24  * time.  Its purpose is to serve as a way to store dates to be read and
25  * written in the <a target='_blank'
26  * href='http://www.w3.org/TR/NOTE-datetime'>W3C date format</a> used in
27  * RDF Dublin Core annotations within SBML.  The W3C date format is a
28  * restricted form of <a target='_blank'
29  * href='http://en.wikipedia.org/wiki/ISO_8601'>ISO 8601</a>, the
30  * international standard for the representation of dates and times.  A
31  * time and date value in this W3C format takes the form
32  * YYYY-MM-DDThh:mm:ssXHH:ZZ (e.g., <code>1997-07-16T19:20:30+01:00</code>)
33  * where XHH:ZZ is the time zone offset.  The libSBML Date object contains
34  * the following fields to represent these values:
35  *
36  * @li @em year: a long integer representing the year.  This should be a
37  * four-digit number such as @c 2011.
38  *
39  * @li @em month: a long integer representing the month, with a range of
40  * values of 1&ndash;12.  The value @c 1 represents January, and so on.
41  *
42  * @li @em day: a long integer representing the day of the month, with a
43  * range of values of 1&ndash;31.
44  *
45  * @li @em hour: a long integer representing the hour on a 24-hour clock,
46  * with a range of values of 0&ndash;23.
47  *
48  * @li @em minute: a long integer representing the minute, with a range
49  * of 0&ndash;59.
50  *
51  * @li @em second: a long integer representing the second, with a range
52  * of 0&ndash;59.
53  *
54  * @li @em sign: a long integer representing the sign of the offset (@c 0
55  * signifying @c + and @c 1 signifying @c -).  See the paragraph below for
56  * further explanations.
57  *
58  * @li @em hours @em offset: a long integer representing the time zone's hour
59  * offset from GMT, with a range of 0&ndash;12.
60  *
61  * @li @em minute @em offset: a long integer representing the time zone's
62  * minute offset from GMT, with a range of 0&ndash;59.
63  *
64  * To illustrate the time zone offset, a value of <code>-05:00</code> would
65  * correspond to USA Eastern Standard Time.  In the Date object, this would
66  * require a value of @c 1 for the sign field, @c 5 for the hour offset and
67  * @c 0 for the minutes offset.
68  *
69  * In the restricted RDF annotations used in SBML, described in
70  * Section&nbsp;6 of the SBML Level&nbsp;2 and Level&nbsp;3 specification
71  * documents, date/time stamps can be used to indicate the time of
72  * creation and modification of a model.  The following SBML model fragment
73  * illustrates this:
74 @verbatim
75 <model metaid='_180340' id='GMO' name='Goldbeter1991_MinMitOscil'>
76     <annotation>
77         <rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#'
78                  xmlns:dc='http://purl.org/dc/elements/1.1/'
79                  xmlns:dcterms='http://purl.org/dc/terms/'
80                  xmlns:vCard='http://www.w3.org/2001/vcard-rdf/3.0#' >
81             <rdf:Description rdf:about='#_180340'>
82                 <dc:creator>
83                     <rdf:Bag>
84                         <rdf:li rdf:parseType='Resource'>
85                             <vCard:N rdf:parseType='Resource'>
86                                 <vCard:Family>Shapiro</vCard:Family>
87                                 <vCard:Given>Bruce</vCard:Given>
88                             </vCard:N>
89                             <vCard:EMAIL>bshapiro@jpl.nasa.gov</vCard:EMAIL>
90                             <vCard:ORG rdf:parseType='Resource'>
91                                 <vCard:Orgname>NASA Jet Propulsion Laboratory</vCard:Orgname>
92                             </vCard:ORG>
93                         </rdf:li>
94                     </rdf:Bag>
95                 </dc:creator>
96                 <dcterms:created rdf:parseType='Resource'>
97                     <dcterms:W3CDTF>2005-02-06T23:39:40+00:00</dcterms:W3CDTF>
98                 </dcterms:created>
99                 <dcterms:modified rdf:parseType='Resource'>
100                     <dcterms:W3CDTF>2005-09-13T13:24:56+00:00</dcterms:W3CDTF>
101                 </dcterms:modified>
102             </rdf:Description>
103         </rdf:RDF>
104     </annotation>
105 </model>
106 @endverbatim
107  */
108 
109 public class Date : global::System.IDisposable {
110 	private HandleRef swigCPtr;
111 	protected bool swigCMemOwn;
112 
Date(IntPtr cPtr, bool cMemoryOwn)113 	internal Date(IntPtr cPtr, bool cMemoryOwn)
114 	{
115 		swigCMemOwn = cMemoryOwn;
116 		swigCPtr    = new HandleRef(this, cPtr);
117 	}
118 
getCPtr(Date obj)119 	internal static HandleRef getCPtr(Date obj)
120 	{
121 		return (obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr;
122 	}
123 
getCPtrAndDisown(Date obj)124 	internal static HandleRef getCPtrAndDisown (Date obj)
125 	{
126 		HandleRef ptr = new HandleRef(null, IntPtr.Zero);
127 
128 		if (obj != null)
129 		{
130 			ptr             = obj.swigCPtr;
131 			obj.swigCMemOwn = false;
132 		}
133 
134 		return ptr;
135 	}
136 
~Date()137   ~Date() {
138     Dispose(false);
139   }
140 
Dispose()141   public void Dispose() {
142     Dispose(true);
143     global::System.GC.SuppressFinalize(this);
144   }
145 
Dispose(bool disposing)146   protected virtual void Dispose(bool disposing) {
147     lock(this) {
148       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
149         if (swigCMemOwn) {
150           swigCMemOwn = false;
151           libsbmlPINVOKE.delete_Date(swigCPtr);
152         }
153         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
154       }
155     }
156   }
157 
operator ==(Date lhs, Date rhs)158   public static bool operator==(Date lhs, Date rhs)
159   {
160     if((Object)lhs == (Object)rhs)
161     {
162       return true;
163     }
164 
165     if( ((Object)lhs == null) || ((Object)rhs == null) )
166     {
167       return false;
168     }
169 
170     return (getCPtr(lhs).Handle.ToString() == getCPtr(rhs).Handle.ToString());
171   }
172 
operator !=(Date lhs, Date rhs)173   public static bool operator!=(Date lhs, Date rhs)
174   {
175     return !(lhs == rhs);
176   }
177 
Equals(Object sb)178   public override bool Equals(Object sb)
179   {
180     if ( ! (sb is Date) )
181     {
182       return false;
183     }
184 
185     return this == (Date)sb;
186   }
187 
GetHashCode()188   public override int GetHashCode()
189   {
190     return swigCPtr.Handle.ToInt32();
191   }
192 
193 
194 /**
195    * Creates a time and date representation for use in model annotations
196    * and elsewhere.
197    *
198    * The following is the complete set of possible arguments to this
199    * constructor, with default values as indicated:
200    *
201    * @param year a long integereger representing the year.  This should be
202    * a four-digit number such as @c 2011.  (Default value used if this
203    * argument is not given: @c 2000.)
204    *
205    * @param month a long integereger representing the month, with a range
206    * of values of 1&ndash;12.  The value @c 1 represents January, and so
207    * on.  (Default value used if this argument is not given: @c 1.)
208    *
209    * @param day a long integereger representing the day of the month, with
210    * a range of values of 1&ndash;31.  (Default value used if this argument
211    * is not given: @c 1.)
212    *
213    * @param hour a long integereger representing the hour on a 24-hour
214    * clock, with a range of values of 0&ndash;23.  (Default value used if
215    * this argument is not given: @c 0.)
216    *
217    * @param minute a long integereger representing the minute, with a
218    * range of 0&ndash;59.  (Default value used if this argument is not
219    * given: @c 0.)
220    *
221    * @param second a long integereger representing the second, with a
222    * range of 0&ndash;59.  (Default value used if this argument is not
223    * given: @c 0.)
224    *
225    * @param sign a long integereger representing the sign of the offset
226    * (@c 0 signifying @c + and @c 1 signifying @c -).  See the paragraph
227    * below for further explanations.  (Default value used if this argument
228    * is not given: @c 0.)
229    *
230    * @param hoursOffset a long integereger representing the time zone's
231    * hour offset from GMT.  (Default value used if this argument is not
232    * given: @c 0.)
233    *
234    * @param minutesOffset a long integereger representing the time zone's
235    * minute offset from GMT.  (Default value used if this argument is not
236    * given: @c 0.)
237    *
238    * To illustrate the time zone offset, a value of <code>-05:00</code>
239    * would correspond to USA Eastern Standard Time.  In the Date object,
240    * this would require a value of @c 1 for the sign field, @c 5 for the
241    * hour offset and @c 0 for the minutes offset.
242    *
243    * @ifnot hasDefaultArgs @htmlinclude warn-default-args-in-docs.html @endif
244    */ public
Date(long year, long month, long day, long hour, long minute, long second, long sign, long hoursOffset, long minutesOffset)245  Date(long year, long month, long day, long hour, long minute, long second, long sign, long hoursOffset, long minutesOffset) : this(libsbmlPINVOKE.new_Date__SWIG_0(year, month, day, hour, minute, second, sign, hoursOffset, minutesOffset), true) {
246   }
247 
248 
249 /**
250    * Creates a time and date representation for use in model annotations
251    * and elsewhere.
252    *
253    * The following is the complete set of possible arguments to this
254    * constructor, with default values as indicated:
255    *
256    * @param year a long integereger representing the year.  This should be
257    * a four-digit number such as @c 2011.  (Default value used if this
258    * argument is not given: @c 2000.)
259    *
260    * @param month a long integereger representing the month, with a range
261    * of values of 1&ndash;12.  The value @c 1 represents January, and so
262    * on.  (Default value used if this argument is not given: @c 1.)
263    *
264    * @param day a long integereger representing the day of the month, with
265    * a range of values of 1&ndash;31.  (Default value used if this argument
266    * is not given: @c 1.)
267    *
268    * @param hour a long integereger representing the hour on a 24-hour
269    * clock, with a range of values of 0&ndash;23.  (Default value used if
270    * this argument is not given: @c 0.)
271    *
272    * @param minute a long integereger representing the minute, with a
273    * range of 0&ndash;59.  (Default value used if this argument is not
274    * given: @c 0.)
275    *
276    * @param second a long integereger representing the second, with a
277    * range of 0&ndash;59.  (Default value used if this argument is not
278    * given: @c 0.)
279    *
280    * @param sign a long integereger representing the sign of the offset
281    * (@c 0 signifying @c + and @c 1 signifying @c -).  See the paragraph
282    * below for further explanations.  (Default value used if this argument
283    * is not given: @c 0.)
284    *
285    * @param hoursOffset a long integereger representing the time zone's
286    * hour offset from GMT.  (Default value used if this argument is not
287    * given: @c 0.)
288    *
289    * @param minutesOffset a long integereger representing the time zone's
290    * minute offset from GMT.  (Default value used if this argument is not
291    * given: @c 0.)
292    *
293    * To illustrate the time zone offset, a value of <code>-05:00</code>
294    * would correspond to USA Eastern Standard Time.  In the Date object,
295    * this would require a value of @c 1 for the sign field, @c 5 for the
296    * hour offset and @c 0 for the minutes offset.
297    *
298    * @ifnot hasDefaultArgs @htmlinclude warn-default-args-in-docs.html @endif
299    */ public
Date(long year, long month, long day, long hour, long minute, long second, long sign, long hoursOffset)300  Date(long year, long month, long day, long hour, long minute, long second, long sign, long hoursOffset) : this(libsbmlPINVOKE.new_Date__SWIG_1(year, month, day, hour, minute, second, sign, hoursOffset), true) {
301   }
302 
303 
304 /**
305    * Creates a time and date representation for use in model annotations
306    * and elsewhere.
307    *
308    * The following is the complete set of possible arguments to this
309    * constructor, with default values as indicated:
310    *
311    * @param year a long integereger representing the year.  This should be
312    * a four-digit number such as @c 2011.  (Default value used if this
313    * argument is not given: @c 2000.)
314    *
315    * @param month a long integereger representing the month, with a range
316    * of values of 1&ndash;12.  The value @c 1 represents January, and so
317    * on.  (Default value used if this argument is not given: @c 1.)
318    *
319    * @param day a long integereger representing the day of the month, with
320    * a range of values of 1&ndash;31.  (Default value used if this argument
321    * is not given: @c 1.)
322    *
323    * @param hour a long integereger representing the hour on a 24-hour
324    * clock, with a range of values of 0&ndash;23.  (Default value used if
325    * this argument is not given: @c 0.)
326    *
327    * @param minute a long integereger representing the minute, with a
328    * range of 0&ndash;59.  (Default value used if this argument is not
329    * given: @c 0.)
330    *
331    * @param second a long integereger representing the second, with a
332    * range of 0&ndash;59.  (Default value used if this argument is not
333    * given: @c 0.)
334    *
335    * @param sign a long integereger representing the sign of the offset
336    * (@c 0 signifying @c + and @c 1 signifying @c -).  See the paragraph
337    * below for further explanations.  (Default value used if this argument
338    * is not given: @c 0.)
339    *
340    * @param hoursOffset a long integereger representing the time zone's
341    * hour offset from GMT.  (Default value used if this argument is not
342    * given: @c 0.)
343    *
344    * @param minutesOffset a long integereger representing the time zone's
345    * minute offset from GMT.  (Default value used if this argument is not
346    * given: @c 0.)
347    *
348    * To illustrate the time zone offset, a value of <code>-05:00</code>
349    * would correspond to USA Eastern Standard Time.  In the Date object,
350    * this would require a value of @c 1 for the sign field, @c 5 for the
351    * hour offset and @c 0 for the minutes offset.
352    *
353    * @ifnot hasDefaultArgs @htmlinclude warn-default-args-in-docs.html @endif
354    */ public
Date(long year, long month, long day, long hour, long minute, long second, long sign)355  Date(long year, long month, long day, long hour, long minute, long second, long sign) : this(libsbmlPINVOKE.new_Date__SWIG_2(year, month, day, hour, minute, second, sign), true) {
356   }
357 
358 
359 /**
360    * Creates a time and date representation for use in model annotations
361    * and elsewhere.
362    *
363    * The following is the complete set of possible arguments to this
364    * constructor, with default values as indicated:
365    *
366    * @param year a long integereger representing the year.  This should be
367    * a four-digit number such as @c 2011.  (Default value used if this
368    * argument is not given: @c 2000.)
369    *
370    * @param month a long integereger representing the month, with a range
371    * of values of 1&ndash;12.  The value @c 1 represents January, and so
372    * on.  (Default value used if this argument is not given: @c 1.)
373    *
374    * @param day a long integereger representing the day of the month, with
375    * a range of values of 1&ndash;31.  (Default value used if this argument
376    * is not given: @c 1.)
377    *
378    * @param hour a long integereger representing the hour on a 24-hour
379    * clock, with a range of values of 0&ndash;23.  (Default value used if
380    * this argument is not given: @c 0.)
381    *
382    * @param minute a long integereger representing the minute, with a
383    * range of 0&ndash;59.  (Default value used if this argument is not
384    * given: @c 0.)
385    *
386    * @param second a long integereger representing the second, with a
387    * range of 0&ndash;59.  (Default value used if this argument is not
388    * given: @c 0.)
389    *
390    * @param sign a long integereger representing the sign of the offset
391    * (@c 0 signifying @c + and @c 1 signifying @c -).  See the paragraph
392    * below for further explanations.  (Default value used if this argument
393    * is not given: @c 0.)
394    *
395    * @param hoursOffset a long integereger representing the time zone's
396    * hour offset from GMT.  (Default value used if this argument is not
397    * given: @c 0.)
398    *
399    * @param minutesOffset a long integereger representing the time zone's
400    * minute offset from GMT.  (Default value used if this argument is not
401    * given: @c 0.)
402    *
403    * To illustrate the time zone offset, a value of <code>-05:00</code>
404    * would correspond to USA Eastern Standard Time.  In the Date object,
405    * this would require a value of @c 1 for the sign field, @c 5 for the
406    * hour offset and @c 0 for the minutes offset.
407    *
408    * @ifnot hasDefaultArgs @htmlinclude warn-default-args-in-docs.html @endif
409    */ public
Date(long year, long month, long day, long hour, long minute, long second)410  Date(long year, long month, long day, long hour, long minute, long second) : this(libsbmlPINVOKE.new_Date__SWIG_3(year, month, day, hour, minute, second), true) {
411   }
412 
413 
414 /**
415    * Creates a time and date representation for use in model annotations
416    * and elsewhere.
417    *
418    * The following is the complete set of possible arguments to this
419    * constructor, with default values as indicated:
420    *
421    * @param year a long integereger representing the year.  This should be
422    * a four-digit number such as @c 2011.  (Default value used if this
423    * argument is not given: @c 2000.)
424    *
425    * @param month a long integereger representing the month, with a range
426    * of values of 1&ndash;12.  The value @c 1 represents January, and so
427    * on.  (Default value used if this argument is not given: @c 1.)
428    *
429    * @param day a long integereger representing the day of the month, with
430    * a range of values of 1&ndash;31.  (Default value used if this argument
431    * is not given: @c 1.)
432    *
433    * @param hour a long integereger representing the hour on a 24-hour
434    * clock, with a range of values of 0&ndash;23.  (Default value used if
435    * this argument is not given: @c 0.)
436    *
437    * @param minute a long integereger representing the minute, with a
438    * range of 0&ndash;59.  (Default value used if this argument is not
439    * given: @c 0.)
440    *
441    * @param second a long integereger representing the second, with a
442    * range of 0&ndash;59.  (Default value used if this argument is not
443    * given: @c 0.)
444    *
445    * @param sign a long integereger representing the sign of the offset
446    * (@c 0 signifying @c + and @c 1 signifying @c -).  See the paragraph
447    * below for further explanations.  (Default value used if this argument
448    * is not given: @c 0.)
449    *
450    * @param hoursOffset a long integereger representing the time zone's
451    * hour offset from GMT.  (Default value used if this argument is not
452    * given: @c 0.)
453    *
454    * @param minutesOffset a long integereger representing the time zone's
455    * minute offset from GMT.  (Default value used if this argument is not
456    * given: @c 0.)
457    *
458    * To illustrate the time zone offset, a value of <code>-05:00</code>
459    * would correspond to USA Eastern Standard Time.  In the Date object,
460    * this would require a value of @c 1 for the sign field, @c 5 for the
461    * hour offset and @c 0 for the minutes offset.
462    *
463    * @ifnot hasDefaultArgs @htmlinclude warn-default-args-in-docs.html @endif
464    */ public
Date(long year, long month, long day, long hour, long minute)465  Date(long year, long month, long day, long hour, long minute) : this(libsbmlPINVOKE.new_Date__SWIG_4(year, month, day, hour, minute), true) {
466   }
467 
468 
469 /**
470    * Creates a time and date representation for use in model annotations
471    * and elsewhere.
472    *
473    * The following is the complete set of possible arguments to this
474    * constructor, with default values as indicated:
475    *
476    * @param year a long integereger representing the year.  This should be
477    * a four-digit number such as @c 2011.  (Default value used if this
478    * argument is not given: @c 2000.)
479    *
480    * @param month a long integereger representing the month, with a range
481    * of values of 1&ndash;12.  The value @c 1 represents January, and so
482    * on.  (Default value used if this argument is not given: @c 1.)
483    *
484    * @param day a long integereger representing the day of the month, with
485    * a range of values of 1&ndash;31.  (Default value used if this argument
486    * is not given: @c 1.)
487    *
488    * @param hour a long integereger representing the hour on a 24-hour
489    * clock, with a range of values of 0&ndash;23.  (Default value used if
490    * this argument is not given: @c 0.)
491    *
492    * @param minute a long integereger representing the minute, with a
493    * range of 0&ndash;59.  (Default value used if this argument is not
494    * given: @c 0.)
495    *
496    * @param second a long integereger representing the second, with a
497    * range of 0&ndash;59.  (Default value used if this argument is not
498    * given: @c 0.)
499    *
500    * @param sign a long integereger representing the sign of the offset
501    * (@c 0 signifying @c + and @c 1 signifying @c -).  See the paragraph
502    * below for further explanations.  (Default value used if this argument
503    * is not given: @c 0.)
504    *
505    * @param hoursOffset a long integereger representing the time zone's
506    * hour offset from GMT.  (Default value used if this argument is not
507    * given: @c 0.)
508    *
509    * @param minutesOffset a long integereger representing the time zone's
510    * minute offset from GMT.  (Default value used if this argument is not
511    * given: @c 0.)
512    *
513    * To illustrate the time zone offset, a value of <code>-05:00</code>
514    * would correspond to USA Eastern Standard Time.  In the Date object,
515    * this would require a value of @c 1 for the sign field, @c 5 for the
516    * hour offset and @c 0 for the minutes offset.
517    *
518    * @ifnot hasDefaultArgs @htmlinclude warn-default-args-in-docs.html @endif
519    */ public
Date(long year, long month, long day, long hour)520  Date(long year, long month, long day, long hour) : this(libsbmlPINVOKE.new_Date__SWIG_5(year, month, day, hour), true) {
521   }
522 
523 
524 /**
525    * Creates a time and date representation for use in model annotations
526    * and elsewhere.
527    *
528    * The following is the complete set of possible arguments to this
529    * constructor, with default values as indicated:
530    *
531    * @param year a long integereger representing the year.  This should be
532    * a four-digit number such as @c 2011.  (Default value used if this
533    * argument is not given: @c 2000.)
534    *
535    * @param month a long integereger representing the month, with a range
536    * of values of 1&ndash;12.  The value @c 1 represents January, and so
537    * on.  (Default value used if this argument is not given: @c 1.)
538    *
539    * @param day a long integereger representing the day of the month, with
540    * a range of values of 1&ndash;31.  (Default value used if this argument
541    * is not given: @c 1.)
542    *
543    * @param hour a long integereger representing the hour on a 24-hour
544    * clock, with a range of values of 0&ndash;23.  (Default value used if
545    * this argument is not given: @c 0.)
546    *
547    * @param minute a long integereger representing the minute, with a
548    * range of 0&ndash;59.  (Default value used if this argument is not
549    * given: @c 0.)
550    *
551    * @param second a long integereger representing the second, with a
552    * range of 0&ndash;59.  (Default value used if this argument is not
553    * given: @c 0.)
554    *
555    * @param sign a long integereger representing the sign of the offset
556    * (@c 0 signifying @c + and @c 1 signifying @c -).  See the paragraph
557    * below for further explanations.  (Default value used if this argument
558    * is not given: @c 0.)
559    *
560    * @param hoursOffset a long integereger representing the time zone's
561    * hour offset from GMT.  (Default value used if this argument is not
562    * given: @c 0.)
563    *
564    * @param minutesOffset a long integereger representing the time zone's
565    * minute offset from GMT.  (Default value used if this argument is not
566    * given: @c 0.)
567    *
568    * To illustrate the time zone offset, a value of <code>-05:00</code>
569    * would correspond to USA Eastern Standard Time.  In the Date object,
570    * this would require a value of @c 1 for the sign field, @c 5 for the
571    * hour offset and @c 0 for the minutes offset.
572    *
573    * @ifnot hasDefaultArgs @htmlinclude warn-default-args-in-docs.html @endif
574    */ public
Date(long year, long month, long day)575  Date(long year, long month, long day) : this(libsbmlPINVOKE.new_Date__SWIG_6(year, month, day), true) {
576   }
577 
578 
579 /**
580    * Creates a time and date representation for use in model annotations
581    * and elsewhere.
582    *
583    * The following is the complete set of possible arguments to this
584    * constructor, with default values as indicated:
585    *
586    * @param year a long integereger representing the year.  This should be
587    * a four-digit number such as @c 2011.  (Default value used if this
588    * argument is not given: @c 2000.)
589    *
590    * @param month a long integereger representing the month, with a range
591    * of values of 1&ndash;12.  The value @c 1 represents January, and so
592    * on.  (Default value used if this argument is not given: @c 1.)
593    *
594    * @param day a long integereger representing the day of the month, with
595    * a range of values of 1&ndash;31.  (Default value used if this argument
596    * is not given: @c 1.)
597    *
598    * @param hour a long integereger representing the hour on a 24-hour
599    * clock, with a range of values of 0&ndash;23.  (Default value used if
600    * this argument is not given: @c 0.)
601    *
602    * @param minute a long integereger representing the minute, with a
603    * range of 0&ndash;59.  (Default value used if this argument is not
604    * given: @c 0.)
605    *
606    * @param second a long integereger representing the second, with a
607    * range of 0&ndash;59.  (Default value used if this argument is not
608    * given: @c 0.)
609    *
610    * @param sign a long integereger representing the sign of the offset
611    * (@c 0 signifying @c + and @c 1 signifying @c -).  See the paragraph
612    * below for further explanations.  (Default value used if this argument
613    * is not given: @c 0.)
614    *
615    * @param hoursOffset a long integereger representing the time zone's
616    * hour offset from GMT.  (Default value used if this argument is not
617    * given: @c 0.)
618    *
619    * @param minutesOffset a long integereger representing the time zone's
620    * minute offset from GMT.  (Default value used if this argument is not
621    * given: @c 0.)
622    *
623    * To illustrate the time zone offset, a value of <code>-05:00</code>
624    * would correspond to USA Eastern Standard Time.  In the Date object,
625    * this would require a value of @c 1 for the sign field, @c 5 for the
626    * hour offset and @c 0 for the minutes offset.
627    *
628    * @ifnot hasDefaultArgs @htmlinclude warn-default-args-in-docs.html @endif
629    */ public
Date(long year, long month)630  Date(long year, long month) : this(libsbmlPINVOKE.new_Date__SWIG_7(year, month), true) {
631   }
632 
633 
634 /**
635    * Creates a time and date representation for use in model annotations
636    * and elsewhere.
637    *
638    * The following is the complete set of possible arguments to this
639    * constructor, with default values as indicated:
640    *
641    * @param year a long integereger representing the year.  This should be
642    * a four-digit number such as @c 2011.  (Default value used if this
643    * argument is not given: @c 2000.)
644    *
645    * @param month a long integereger representing the month, with a range
646    * of values of 1&ndash;12.  The value @c 1 represents January, and so
647    * on.  (Default value used if this argument is not given: @c 1.)
648    *
649    * @param day a long integereger representing the day of the month, with
650    * a range of values of 1&ndash;31.  (Default value used if this argument
651    * is not given: @c 1.)
652    *
653    * @param hour a long integereger representing the hour on a 24-hour
654    * clock, with a range of values of 0&ndash;23.  (Default value used if
655    * this argument is not given: @c 0.)
656    *
657    * @param minute a long integereger representing the minute, with a
658    * range of 0&ndash;59.  (Default value used if this argument is not
659    * given: @c 0.)
660    *
661    * @param second a long integereger representing the second, with a
662    * range of 0&ndash;59.  (Default value used if this argument is not
663    * given: @c 0.)
664    *
665    * @param sign a long integereger representing the sign of the offset
666    * (@c 0 signifying @c + and @c 1 signifying @c -).  See the paragraph
667    * below for further explanations.  (Default value used if this argument
668    * is not given: @c 0.)
669    *
670    * @param hoursOffset a long integereger representing the time zone's
671    * hour offset from GMT.  (Default value used if this argument is not
672    * given: @c 0.)
673    *
674    * @param minutesOffset a long integereger representing the time zone's
675    * minute offset from GMT.  (Default value used if this argument is not
676    * given: @c 0.)
677    *
678    * To illustrate the time zone offset, a value of <code>-05:00</code>
679    * would correspond to USA Eastern Standard Time.  In the Date object,
680    * this would require a value of @c 1 for the sign field, @c 5 for the
681    * hour offset and @c 0 for the minutes offset.
682    *
683    * @ifnot hasDefaultArgs @htmlinclude warn-default-args-in-docs.html @endif
684    */ public
Date(long year)685  Date(long year) : this(libsbmlPINVOKE.new_Date__SWIG_8(year), true) {
686   }
687 
688 
689 /**
690    * Creates a time and date representation for use in model annotations
691    * and elsewhere.
692    *
693    * The following is the complete set of possible arguments to this
694    * constructor, with default values as indicated:
695    *
696    * @param year a long integereger representing the year.  This should be
697    * a four-digit number such as @c 2011.  (Default value used if this
698    * argument is not given: @c 2000.)
699    *
700    * @param month a long integereger representing the month, with a range
701    * of values of 1&ndash;12.  The value @c 1 represents January, and so
702    * on.  (Default value used if this argument is not given: @c 1.)
703    *
704    * @param day a long integereger representing the day of the month, with
705    * a range of values of 1&ndash;31.  (Default value used if this argument
706    * is not given: @c 1.)
707    *
708    * @param hour a long integereger representing the hour on a 24-hour
709    * clock, with a range of values of 0&ndash;23.  (Default value used if
710    * this argument is not given: @c 0.)
711    *
712    * @param minute a long integereger representing the minute, with a
713    * range of 0&ndash;59.  (Default value used if this argument is not
714    * given: @c 0.)
715    *
716    * @param second a long integereger representing the second, with a
717    * range of 0&ndash;59.  (Default value used if this argument is not
718    * given: @c 0.)
719    *
720    * @param sign a long integereger representing the sign of the offset
721    * (@c 0 signifying @c + and @c 1 signifying @c -).  See the paragraph
722    * below for further explanations.  (Default value used if this argument
723    * is not given: @c 0.)
724    *
725    * @param hoursOffset a long integereger representing the time zone's
726    * hour offset from GMT.  (Default value used if this argument is not
727    * given: @c 0.)
728    *
729    * @param minutesOffset a long integereger representing the time zone's
730    * minute offset from GMT.  (Default value used if this argument is not
731    * given: @c 0.)
732    *
733    * To illustrate the time zone offset, a value of <code>-05:00</code>
734    * would correspond to USA Eastern Standard Time.  In the Date object,
735    * this would require a value of @c 1 for the sign field, @c 5 for the
736    * hour offset and @c 0 for the minutes offset.
737    *
738    * @ifnot hasDefaultArgs @htmlinclude warn-default-args-in-docs.html @endif
739    */ public
Date()740  Date() : this(libsbmlPINVOKE.new_Date__SWIG_9(), true) {
741   }
742 
743 
744 /**
745    * Creates a Date object from a string expressing a date and time value.
746    *
747    * This constructor expects its argument to be in the <a target='_blank'
748    * href='http://www.w3.org/TR/NOTE-datetime'>W3C date format with time
749    * zone offset</a>, used in RDF Dublin Core annotations within SBML.
750    *
751    *
752  *
753  * The date format expresses a date and time value as a string of the form
754  * YYYY-MM-DDThh:mm:ssXHH:ZZ, where
755  *
756  * @li @em YYYY is a four-digit integer representing the year.  This
757  * should be a four-digit number such as @c 2011.
758  *
759  * @li @em MM is a two-digit integer representing the month, with a range
760  * of values of 01&ndash;12.  The value @c 1 represents January, and so
761  * on.
762  *
763  * @li @em DD is a two-digit integer representing the day of the month,
764  * with a range of values of 01&ndash;31.
765  *
766  * @li @em T is the literal character @c T.
767  *
768  * @li @em hh is a two-digit integer representing the hour on a 24-hour
769  * clock, with a range of values of 00&ndash;23.
770  *
771  * @li @em mm is a two-digit integer representing the minute, with a
772  * range of 00&ndash;59.
773  *
774  * @li @em ss is a two-digit integer representing the second, with a
775  * range of 0&ndash;59.
776  *
777  * @li @em X is the the sign of the time zone offset, either @c + or
778  * <code>-</code>.
779  *
780  * @li @em HH is a two-digit integer representing the hour of the time
781  * zone offset, with a range of 00&ndash;23.
782  *
783  * @li @em ZZ is a two-digit integer representing the minutes of the time
784  * zone offset, with a range of 00&ndash;59.
785  *
786  * In the string format above, it is important not to forget the literal
787  * character @c T in the string.  Here is an example date/time string:
788  * <code>1997-07-16T19:20:30+01:00</code>, which would represent July 16,
789  * 1997, at 19:20:30 in Central European Time (which is UTC +1:00).
790    *
791    * If this constructor is given a @c null argument or a string of length
792    * zero, it constructs a Date object with the value of January 1, 2000,
793    * at time 00:00 UTC.  Otherwise, the argument @em must be in the
794    * complete format described above, or unpredictable results will happen.
795    *
796    * @param date a string representing the date.
797    */ public
Date(string date)798  Date(string date) : this(libsbmlPINVOKE.new_Date__SWIG_10(date), true) {
799   }
800 
801 
802 /**
803    * Copy constructor; creates a copy of this Date.
804    *
805    * @param orig the object to copy.
806    */ public
Date(Date orig)807  Date(Date orig) : this(libsbmlPINVOKE.new_Date__SWIG_11(Date.getCPtr(orig)), true) {
808     if (libsbmlPINVOKE.SWIGPendingException.Pending) throw libsbmlPINVOKE.SWIGPendingException.Retrieve();
809   }
810 
811 
812 /**
813    * Creates and returns a deep copy of this Date object.
814    *
815    * @return the (deep) copy of this Date object.
816    */ public
clone()817  Date clone() {
818     global::System.IntPtr cPtr = libsbmlPINVOKE.Date_clone(swigCPtr);
819     Date ret = (cPtr == global::System.IntPtr.Zero) ? null : new Date(cPtr, true);
820     return ret;
821   }
822 
823 
824 /**
825    * Returns the year from this Date.
826    *
827    * @return the year from this Date.
828    */ public
getYear()829  long getYear() { return (long)libsbmlPINVOKE.Date_getYear(swigCPtr); }
830 
831 
832 /**
833    * Returns the month from this Date.
834    *
835    * @return the month from this Date.
836    */ public
getMonth()837  long getMonth() { return (long)libsbmlPINVOKE.Date_getMonth(swigCPtr); }
838 
839 
840 /**
841    * Returns the day from this Date.
842    *
843    * @return the day from this Date.
844    */ public
getDay()845  long getDay() { return (long)libsbmlPINVOKE.Date_getDay(swigCPtr); }
846 
847 
848 /**
849    * Returns the hour from this Date.
850    *
851    * @return the hour from this Date.
852    */ public
getHour()853  long getHour() { return (long)libsbmlPINVOKE.Date_getHour(swigCPtr); }
854 
855 
856 /**
857    * Returns the minute from this Date.
858    *
859    * @return the minute from this Date.
860    */ public
getMinute()861  long getMinute() { return (long)libsbmlPINVOKE.Date_getMinute(swigCPtr); }
862 
863 
864 /**
865    * Returns the seconds from this Date.
866    *
867    * @return the seconds from this Date.
868    */ public
getSecond()869  long getSecond() { return (long)libsbmlPINVOKE.Date_getSecond(swigCPtr); }
870 
871 
872 /**
873    * Returns the sign of the time zone offset from this Date.
874    *
875    * @return the sign of the offset from this Date.
876    */ public
getSignOffset()877  long getSignOffset() { return (long)libsbmlPINVOKE.Date_getSignOffset(swigCPtr); }
878 
879 
880 /**
881    * Returns the hours of the time zone offset from this Date.
882    *
883    * @return the hours of the offset from this Date.
884    */ public
getHoursOffset()885  long getHoursOffset() { return (long)libsbmlPINVOKE.Date_getHoursOffset(swigCPtr); }
886 
887 
888 /**
889    * Returns the minutes of the time zone offset from this Date.
890    *
891    * @return the minutes of the offset from this Date.
892    */ public
getMinutesOffset()893  long getMinutesOffset() { return (long)libsbmlPINVOKE.Date_getMinutesOffset(swigCPtr); }
894 
895 
896 /**
897    * Returns the current Date value in text-string form.
898    *
899    * The string returned will be in the <a target='_blank'
900    * href='http://www.w3.org/TR/NOTE-datetime'>W3C date format with time
901    * zone offset</a>, used in RDF Dublin Core annotations within SBML.
902    *
903    *
904  *
905  * The date format expresses a date and time value as a string of the form
906  * YYYY-MM-DDThh:mm:ssXHH:ZZ, where
907  *
908  * @li @em YYYY is a four-digit integer representing the year.  This
909  * should be a four-digit number such as @c 2011.
910  *
911  * @li @em MM is a two-digit integer representing the month, with a range
912  * of values of 01&ndash;12.  The value @c 1 represents January, and so
913  * on.
914  *
915  * @li @em DD is a two-digit integer representing the day of the month,
916  * with a range of values of 01&ndash;31.
917  *
918  * @li @em T is the literal character @c T.
919  *
920  * @li @em hh is a two-digit integer representing the hour on a 24-hour
921  * clock, with a range of values of 00&ndash;23.
922  *
923  * @li @em mm is a two-digit integer representing the minute, with a
924  * range of 00&ndash;59.
925  *
926  * @li @em ss is a two-digit integer representing the second, with a
927  * range of 0&ndash;59.
928  *
929  * @li @em X is the the sign of the time zone offset, either @c + or
930  * <code>-</code>.
931  *
932  * @li @em HH is a two-digit integer representing the hour of the time
933  * zone offset, with a range of 00&ndash;23.
934  *
935  * @li @em ZZ is a two-digit integer representing the minutes of the time
936  * zone offset, with a range of 00&ndash;59.
937  *
938  * In the string format above, it is important not to forget the literal
939  * character @c T in the string.  Here is an example date/time string:
940  * <code>1997-07-16T19:20:30+01:00</code>, which would represent July 16,
941  * 1997, at 19:20:30 in Central European Time (which is UTC +1:00).
942    *
943    * @return the date as a string.
944    */ public
getDateAsString()945  string getDateAsString() {
946     string ret = libsbmlPINVOKE.Date_getDateAsString(swigCPtr);
947     return ret;
948   }
949 
950 
951 /**
952    * Sets the value of the year of this Date object.
953    *
954    * The value given as argument must be between 1000 and 9999 inclusive.
955    * (In the millennium during which this libSBML documentation is being
956    * written, a typical value is @c 2011, but we hope that SBML will
957    * continue to be used for a long time.)
958    *
959    * @param year a long integer representing the year.
960    *
961    *
962  * @return integer value indicating success/failure of the
963  * function.  @if clike The value is drawn from the
964  * enumeration #OperationReturnValues_t. @endif The possible values
965  * returned by this function are:
966  * @li @link libsbml#LIBSBML_OPERATION_SUCCESS LIBSBML_OPERATION_SUCCESS@endlink
967    * @li @link libsbml#LIBSBML_INVALID_ATTRIBUTE_VALUE LIBSBML_INVALID_ATTRIBUTE_VALUE@endlink
968    */ public
setYear(long year)969  int setYear(long year) {
970     int ret = libsbmlPINVOKE.Date_setYear(swigCPtr, year);
971     return ret;
972   }
973 
974 
975 /**
976    * Sets the value of the month of this Date object.
977    *
978    * @param month a long integer representing the month; it must be in the
979    * range 1&ndash;12 or an error will be signaled.
980    *
981    *
982  * @return integer value indicating success/failure of the
983  * function.  @if clike The value is drawn from the
984  * enumeration #OperationReturnValues_t. @endif The possible values
985  * returned by this function are:
986  * @li @link libsbml#LIBSBML_OPERATION_SUCCESS LIBSBML_OPERATION_SUCCESS@endlink
987    * @li @link libsbml#LIBSBML_INVALID_ATTRIBUTE_VALUE LIBSBML_INVALID_ATTRIBUTE_VALUE@endlink
988    */ public
setMonth(long month)989  int setMonth(long month) {
990     int ret = libsbmlPINVOKE.Date_setMonth(swigCPtr, month);
991     return ret;
992   }
993 
994 
995 /**
996    * Sets the value of the day of this Date object.
997    *
998    * @param day a long integer representing the day; it must be in the
999    * range 0&ndash;31 or an error will be signaled.
1000    *
1001    *
1002  * @return integer value indicating success/failure of the
1003  * function.  @if clike The value is drawn from the
1004  * enumeration #OperationReturnValues_t. @endif The possible values
1005  * returned by this function are:
1006  * @li @link libsbml#LIBSBML_OPERATION_SUCCESS LIBSBML_OPERATION_SUCCESS@endlink
1007    * @li @link libsbml#LIBSBML_INVALID_ATTRIBUTE_VALUE LIBSBML_INVALID_ATTRIBUTE_VALUE@endlink
1008    */ public
setDay(long day)1009  int setDay(long day) {
1010     int ret = libsbmlPINVOKE.Date_setDay(swigCPtr, day);
1011     return ret;
1012   }
1013 
1014 
1015 /**
1016    * Sets the value of the hour of this Date object.
1017    *
1018    * @param hour a long integer representing the hour to set; it must be
1019    * in the range 0&ndash;23 or an error will be signaled.
1020    *
1021    *
1022  * @return integer value indicating success/failure of the
1023  * function.  @if clike The value is drawn from the
1024  * enumeration #OperationReturnValues_t. @endif The possible values
1025  * returned by this function are:
1026  * @li @link libsbml#LIBSBML_OPERATION_SUCCESS LIBSBML_OPERATION_SUCCESS@endlink
1027    * @li @link libsbml#LIBSBML_INVALID_ATTRIBUTE_VALUE LIBSBML_INVALID_ATTRIBUTE_VALUE@endlink
1028    */ public
setHour(long hour)1029  int setHour(long hour) {
1030     int ret = libsbmlPINVOKE.Date_setHour(swigCPtr, hour);
1031     return ret;
1032   }
1033 
1034 
1035 /**
1036    * Sets the value of the minute of this Date object.
1037    *
1038    * @param minute a long integer representing the minute to set; it must
1039    * be in the range 0&ndash;59 or an error will be signaled.
1040    *
1041    *
1042  * @return integer value indicating success/failure of the
1043  * function.  @if clike The value is drawn from the
1044  * enumeration #OperationReturnValues_t. @endif The possible values
1045  * returned by this function are:
1046  * @li @link libsbml#LIBSBML_OPERATION_SUCCESS LIBSBML_OPERATION_SUCCESS@endlink
1047    * @li @link libsbml#LIBSBML_INVALID_ATTRIBUTE_VALUE LIBSBML_INVALID_ATTRIBUTE_VALUE@endlink
1048    */ public
setMinute(long minute)1049  int setMinute(long minute) {
1050     int ret = libsbmlPINVOKE.Date_setMinute(swigCPtr, minute);
1051     return ret;
1052   }
1053 
1054 
1055 /**
1056    * Sets the value of the second of the Date object.
1057    *
1058    * @param second a long integer representing the seconds; it must
1059    * be in the range 0&ndash;59 or an error will be signaled.
1060    *
1061    *
1062  * @return integer value indicating success/failure of the
1063  * function.  @if clike The value is drawn from the
1064  * enumeration #OperationReturnValues_t. @endif The possible values
1065  * returned by this function are:
1066  * @li @link libsbml#LIBSBML_OPERATION_SUCCESS LIBSBML_OPERATION_SUCCESS@endlink
1067    * @li @link libsbml#LIBSBML_INVALID_ATTRIBUTE_VALUE LIBSBML_INVALID_ATTRIBUTE_VALUE@endlink
1068    */ public
setSecond(long second)1069  int setSecond(long second) {
1070     int ret = libsbmlPINVOKE.Date_setSecond(swigCPtr, second);
1071     return ret;
1072   }
1073 
1074 
1075 /**
1076    * Sets the value of the sign of the time zone offset of this Date object.
1077    *
1078    * The only permissible values are @c 0 and @c 1.
1079    *
1080    * @param sign a long integer representing the sign of the offset, with
1081    * @c 0 signifying @c + and @c 1 signifying @c -.
1082    *
1083    *
1084  * @return integer value indicating success/failure of the
1085  * function.  @if clike The value is drawn from the
1086  * enumeration #OperationReturnValues_t. @endif The possible values
1087  * returned by this function are:
1088  * @li @link libsbml#LIBSBML_OPERATION_SUCCESS LIBSBML_OPERATION_SUCCESS@endlink
1089    * @li @link libsbml#LIBSBML_INVALID_ATTRIBUTE_VALUE LIBSBML_INVALID_ATTRIBUTE_VALUE@endlink
1090    */ public
setSignOffset(long sign)1091  int setSignOffset(long sign) {
1092     int ret = libsbmlPINVOKE.Date_setSignOffset(swigCPtr, sign);
1093     return ret;
1094   }
1095 
1096 
1097 /**
1098    * Sets the value of this Date object's time zone hour offset.
1099    *
1100    * @param hoursOffset a long integer representing the hours of the
1101    * offset; it must be in the range 0&ndash;12 or an error will be
1102    * signaled.
1103    *
1104    *
1105  * @return integer value indicating success/failure of the
1106  * function.  @if clike The value is drawn from the
1107  * enumeration #OperationReturnValues_t. @endif The possible values
1108  * returned by this function are:
1109  * @li @link libsbml#LIBSBML_OPERATION_SUCCESS LIBSBML_OPERATION_SUCCESS@endlink
1110    * @li @link libsbml#LIBSBML_INVALID_ATTRIBUTE_VALUE LIBSBML_INVALID_ATTRIBUTE_VALUE@endlink
1111    */ public
setHoursOffset(long hoursOffset)1112  int setHoursOffset(long hoursOffset) {
1113     int ret = libsbmlPINVOKE.Date_setHoursOffset(swigCPtr, hoursOffset);
1114     return ret;
1115   }
1116 
1117 
1118 /**
1119    * Sets the value of this Date object's time zone minutes offset.
1120    *
1121    * @param minutesOffset a long integer representing the minutes of the
1122    * offset; it must be in the range 0&ndash;59 or an error will be
1123    * signaled.
1124    *
1125    *
1126  * @return integer value indicating success/failure of the
1127  * function.  @if clike The value is drawn from the
1128  * enumeration #OperationReturnValues_t. @endif The possible values
1129  * returned by this function are:
1130  * @li @link libsbml#LIBSBML_OPERATION_SUCCESS LIBSBML_OPERATION_SUCCESS@endlink
1131    * @li @link libsbml#LIBSBML_INVALID_ATTRIBUTE_VALUE LIBSBML_INVALID_ATTRIBUTE_VALUE@endlink
1132    */ public
setMinutesOffset(long minutesOffset)1133  int setMinutesOffset(long minutesOffset) {
1134     int ret = libsbmlPINVOKE.Date_setMinutesOffset(swigCPtr, minutesOffset);
1135     return ret;
1136   }
1137 
1138 
1139 /**
1140    * Sets the value of this Date object using a date and time value
1141    * expressed as a text string.
1142    *
1143    * This method expects its argument to be in the <a target='_blank'
1144    * href='http://www.w3.org/TR/NOTE-datetime'>W3C date format with time
1145    * zone offset</a>, used in RDF Dublin Core annotations within SBML.
1146    *
1147    *
1148  *
1149  * The date format expresses a date and time value as a string of the form
1150  * YYYY-MM-DDThh:mm:ssXHH:ZZ, where
1151  *
1152  * @li @em YYYY is a four-digit integer representing the year.  This
1153  * should be a four-digit number such as @c 2011.
1154  *
1155  * @li @em MM is a two-digit integer representing the month, with a range
1156  * of values of 01&ndash;12.  The value @c 1 represents January, and so
1157  * on.
1158  *
1159  * @li @em DD is a two-digit integer representing the day of the month,
1160  * with a range of values of 01&ndash;31.
1161  *
1162  * @li @em T is the literal character @c T.
1163  *
1164  * @li @em hh is a two-digit integer representing the hour on a 24-hour
1165  * clock, with a range of values of 00&ndash;23.
1166  *
1167  * @li @em mm is a two-digit integer representing the minute, with a
1168  * range of 00&ndash;59.
1169  *
1170  * @li @em ss is a two-digit integer representing the second, with a
1171  * range of 0&ndash;59.
1172  *
1173  * @li @em X is the the sign of the time zone offset, either @c + or
1174  * <code>-</code>.
1175  *
1176  * @li @em HH is a two-digit integer representing the hour of the time
1177  * zone offset, with a range of 00&ndash;23.
1178  *
1179  * @li @em ZZ is a two-digit integer representing the minutes of the time
1180  * zone offset, with a range of 00&ndash;59.
1181  *
1182  * In the string format above, it is important not to forget the literal
1183  * character @c T in the string.  Here is an example date/time string:
1184  * <code>1997-07-16T19:20:30+01:00</code>, which would represent July 16,
1185  * 1997, at 19:20:30 in Central European Time (which is UTC +1:00).
1186    *
1187    * If this method is given a @c null argument or a string of length zero,
1188    * it constructs a Date object with the value of January 1, 2000, at time
1189    * 00:00 UTC.  Otherwise, the argument @em must be in the complete format
1190    * described above, or unpredictable results will happen.
1191    *
1192    * @param date a string representing the date.
1193    *
1194    *
1195  * @return integer value indicating success/failure of the
1196  * function.  @if clike The value is drawn from the
1197  * enumeration #OperationReturnValues_t. @endif The possible values
1198  * returned by this function are:
1199  * @li @link libsbml#LIBSBML_OPERATION_SUCCESS LIBSBML_OPERATION_SUCCESS@endlink
1200    * @li @link libsbml#LIBSBML_INVALID_ATTRIBUTE_VALUE LIBSBML_INVALID_ATTRIBUTE_VALUE@endlink
1201    */ public
setDateAsString(string date)1202  int setDateAsString(string date) {
1203     int ret = libsbmlPINVOKE.Date_setDateAsString(swigCPtr, date);
1204     return ret;
1205   }
1206 
1207 
1208 /**
1209    * Returns @c true or @c false depending on whether this date object represents
1210    * a valid date and time value.
1211    *
1212    * This method verifies that the date/time value stored in this object is
1213    * well-formed and represents plausible values.  A time and date value in
1214    * the W3C format takes the form YYYY-MM-DDThh:mm:ssXHH:ZZ (e.g.,
1215    * <code>1997-07-16T19:20:30+01:00</code>) where XHH:ZZ is the time zone
1216    * offset.  This method checks such things as whether the value of the
1217    * month number is less than or equal to 12, whether the value of the
1218    * minutes number is less than or equal to 59, whether a time zone offset
1219    * is set, etc.
1220    *
1221    * @return @c true if the date is valid, @c false otherwise.
1222    */ public
representsValidDate()1223  bool representsValidDate() {
1224     bool ret = libsbmlPINVOKE.Date_representsValidDate(swigCPtr);
1225     return ret;
1226   }
1227 
1228 
1229 /** */ /* libsbml-internal */ public
hasBeenModified()1230  bool hasBeenModified() {
1231     bool ret = libsbmlPINVOKE.Date_hasBeenModified(swigCPtr);
1232     return ret;
1233   }
1234 
1235 
1236 /** */ /* libsbml-internal */ public
resetModifiedFlags()1237  void resetModifiedFlags() {
1238     libsbmlPINVOKE.Date_resetModifiedFlags(swigCPtr);
1239   }
1240 
1241 }
1242 
1243 }
1244