From 84adefa331c4159d432d22840663c38f155cd4c1 Mon Sep 17 00:00:00 2001 From: Erlang/OTP Date: Fri, 20 Nov 2009 14:54:40 +0000 Subject: The R13B03 release. --- lib/cosTime/src/CosTime.idl | 59 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 lib/cosTime/src/CosTime.idl (limited to 'lib/cosTime/src/CosTime.idl') diff --git a/lib/cosTime/src/CosTime.idl b/lib/cosTime/src/CosTime.idl new file mode 100644 index 0000000000..2bf32681c1 --- /dev/null +++ b/lib/cosTime/src/CosTime.idl @@ -0,0 +1,59 @@ +#ifndef _COS_TIME_IDL_ +#define _COS_TIME_IDL_ + +#pragma prefix "omg.org" + +#include + +module CosTime { + enum TimeComparison { + TCEqualTo, + TCLessThan, + TCGreaterThan, + TCIndeterminate + }; + enum ComparisonType{ + IntervalC, + MidC }; + enum OverlapType { + OTContainer, + OTContained, + OTOverlap, + OTNoOverlap + }; + + exception TimeUnavailable {}; + interface TIO; // forward declaration + + interface UTO { + readonly attribute TimeBase::TimeT time; + readonly attribute TimeBase::InaccuracyT inaccuracy; + readonly attribute TimeBase::TdfT tdf; + readonly attribute TimeBase::UtcT utc_time; + + UTO absolute_time(); + TimeComparison compare_time( in ComparisonType comparison_type, in UTO uto ); + TIO time_to_interval( in UTO uto ); + TIO interval(); + }; + + interface TIO { + readonly attribute TimeBase::IntervalT time_interval; + + OverlapType spans ( in UTO time, out TIO overlap ); + OverlapType overlaps ( in TIO interval, out TIO overlap ); + UTO time (); + }; + + interface TimeService { + UTO universal_time() + raises(TimeUnavailable ); + UTO secure_universal_time() + raises(TimeUnavailable ); + UTO new_universal_time( in TimeBase::TimeT time, in TimeBase::InaccuracyT inaccuracy, in TimeBase::TdfT tdf ); + UTO uto_from_utc( in TimeBase::UtcT utc ); + TIO new_interval( in TimeBase::TimeT lower, in TimeBase::TimeT upper ); + }; +}; + +#endif -- cgit v1.2.3