aboutsummaryrefslogtreecommitdiffstats
path: root/lib/cosTime/doc
diff options
context:
space:
mode:
authorErlang/OTP <[email protected]>2009-11-20 14:54:40 +0000
committerErlang/OTP <[email protected]>2009-11-20 14:54:40 +0000
commit84adefa331c4159d432d22840663c38f155cd4c1 (patch)
treebff9a9c66adda4df2106dfd0e5c053ab182a12bd /lib/cosTime/doc
downloadotp-84adefa331c4159d432d22840663c38f155cd4c1.tar.gz
otp-84adefa331c4159d432d22840663c38f155cd4c1.tar.bz2
otp-84adefa331c4159d432d22840663c38f155cd4c1.zip
The R13B03 release.OTP_R13B03
Diffstat (limited to 'lib/cosTime/doc')
-rw-r--r--lib/cosTime/doc/html/.gitignore0
-rw-r--r--lib/cosTime/doc/man3/.gitignore0
-rw-r--r--lib/cosTime/doc/man6/.gitignore0
-rw-r--r--lib/cosTime/doc/pdf/.gitignore0
-rw-r--r--lib/cosTime/doc/src/CosTime_TIO.xml108
-rw-r--r--lib/cosTime/doc/src/CosTime_TimeService.xml103
-rw-r--r--lib/cosTime/doc/src/CosTime_UTO.xml155
-rw-r--r--lib/cosTime/doc/src/CosTimerEvent_TimerEventHandler.xml125
-rw-r--r--lib/cosTime/doc/src/CosTimerEvent_TimerEventService.xml84
-rw-r--r--lib/cosTime/doc/src/Makefile225
-rw-r--r--lib/cosTime/doc/src/book.gifbin0 -> 1081 bytes
-rw-r--r--lib/cosTime/doc/src/book.xml48
-rw-r--r--lib/cosTime/doc/src/ch_contents.xml74
-rw-r--r--lib/cosTime/doc/src/ch_example.xml112
-rw-r--r--lib/cosTime/doc/src/ch_install.xml55
-rw-r--r--lib/cosTime/doc/src/ch_introduction.xml58
-rw-r--r--lib/cosTime/doc/src/cosTime.xml174
-rw-r--r--lib/cosTime/doc/src/fascicules.xml18
-rw-r--r--lib/cosTime/doc/src/make.dep22
-rw-r--r--lib/cosTime/doc/src/notes.gifbin0 -> 2005 bytes
-rw-r--r--lib/cosTime/doc/src/notes.xml187
-rw-r--r--lib/cosTime/doc/src/part.xml39
-rw-r--r--lib/cosTime/doc/src/part_notes.xml36
-rw-r--r--lib/cosTime/doc/src/ref_man.gifbin0 -> 1530 bytes
-rw-r--r--lib/cosTime/doc/src/ref_man.xml41
-rw-r--r--lib/cosTime/doc/src/summary.html.src1
-rw-r--r--lib/cosTime/doc/src/user_guide.gifbin0 -> 1581 bytes
27 files changed, 1665 insertions, 0 deletions
diff --git a/lib/cosTime/doc/html/.gitignore b/lib/cosTime/doc/html/.gitignore
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/lib/cosTime/doc/html/.gitignore
diff --git a/lib/cosTime/doc/man3/.gitignore b/lib/cosTime/doc/man3/.gitignore
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/lib/cosTime/doc/man3/.gitignore
diff --git a/lib/cosTime/doc/man6/.gitignore b/lib/cosTime/doc/man6/.gitignore
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/lib/cosTime/doc/man6/.gitignore
diff --git a/lib/cosTime/doc/pdf/.gitignore b/lib/cosTime/doc/pdf/.gitignore
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/lib/cosTime/doc/pdf/.gitignore
diff --git a/lib/cosTime/doc/src/CosTime_TIO.xml b/lib/cosTime/doc/src/CosTime_TIO.xml
new file mode 100644
index 0000000000..91aa34d8c8
--- /dev/null
+++ b/lib/cosTime/doc/src/CosTime_TIO.xml
@@ -0,0 +1,108 @@
+<?xml version="1.0" encoding="latin1" ?>
+<!DOCTYPE erlref SYSTEM "erlref.dtd">
+
+<erlref>
+ <header>
+ <copyright>
+ <year>2000</year>
+ <year>2007</year>
+ <holder>Ericsson AB, All Rights Reserved</holder>
+ </copyright>
+ <legalnotice>
+ The contents of this file are subject to the Erlang Public License,
+ Version 1.1, (the "License"); you may not use this file except in
+ compliance with the License. You should have received a copy of the
+ Erlang Public License along with this software. If not, it can be
+ retrieved online at http://www.erlang.org/.
+
+ Software distributed under the License is distributed on an "AS IS"
+ basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
+ the License for the specific language governing rights and limitations
+ under the License.
+
+ The Initial Developer of the Original Code is Ericsson AB.
+ </legalnotice>
+
+ <title>CosTime_TIO</title>
+ <prepared>Niclas Eklund</prepared>
+ <responsible>Niclas Eklund</responsible>
+ <docno></docno>
+ <approved>Niclas Eklund</approved>
+ <checked></checked>
+ <date>2000-02-01</date>
+ <rev>1.0</rev>
+ </header>
+ <module>CosTime_TIO</module>
+ <modulesummary>This module implements the OMG CosTime::TIO interface.</modulesummary>
+ <description>
+ <p>To get access to the record definitions for the structures use: <br></br>
+<c>-include_lib("cosTime/include/*.hrl").</c></p>
+ </description>
+ <funcs>
+ <func>
+ <name>'_get_time_interval'(TIO) -> TimeInterval</name>
+ <fsummary>Return the interval associated with the target object</fsummary>
+ <type>
+ <v>TIO = #objref</v>
+ <v>TimeInterval = #'TimeBase_IntervalT{lower_bound, upper_bound}</v>
+ <v>lower_bound = upper_bound = ulonglong</v>
+ </type>
+ <desc>
+ <p>This operation returns the interval associated with the target object.</p>
+ </desc>
+ </func>
+ <func>
+ <name>spans(TIO, UTO) -> Reply</name>
+ <fsummary>Return an OverlapType which describe how the interval in the target object and the timerange represented by the UTO object overlap</fsummary>
+ <type>
+ <v>TIO = UTO = OtherTIO = #objref</v>
+ <v>Reply = {OverlapType, OtherTIO}</v>
+ <v>OverlapType = 'OTContainer' | 'OTContained' | 'OTOverlap' | 'OTNoOverlap'</v>
+ </type>
+ <desc>
+ <p>This operation returns a <em>OverlapType</em> depending on how the interval
+ in the target object and the timerange represented by the UTO object
+ overlap. If the OverlapType is 'OTNoOverlap' the out parameter represents
+ the gap between the two intervals. If OverlapType is one of the others, the
+ out parameter represents the overlap interval.
+ The definitions of the OverlapType's are:</p>
+ <p></p>
+ <list type="bulleted">
+ <item>'OTContainer' - target objects lower and upper limits are,
+ respectively, less or equal to and greater or equal to given object's.</item>
+ <item>'OTContained' - target objects lower and upper limits are,
+ respectively, greater or equal to and less or equal to given object's.</item>
+ <item>'OTOverlap' - target objects interval overlap given object's.</item>
+ <item>'OTNoOverlap' - target objects interval do not overlap given object's.</item>
+ </list>
+ </desc>
+ </func>
+ <func>
+ <name>overlaps(TIO, OtherTIO) -> Reply</name>
+ <fsummary>Return an OverlapType which describe how the interval in the target object and the timerange represented by the TIO object overlap</fsummary>
+ <type>
+ <v>TIO = OtherTIO = AnotherTIO = #objref</v>
+ <v>Reply = {OverlapType, AnotherTIO}</v>
+ <v>OverlapType = 'OTContainer' | 'OTContained' | 'OTOverlap' | 'OTNoOverlap'</v>
+ </type>
+ <desc>
+ <p>This operation returns a <em>OverlapType</em> depending on how the interval
+ in the target object and the timerange represented by the TIO object
+ overlap. The OverlapType's are described under spans/2.</p>
+ </desc>
+ </func>
+ <func>
+ <name>time(TIO) -> UTO</name>
+ <fsummary>Return a UTO in which the interval equals the time interval in the target object and time value is the midpoint of the interval</fsummary>
+ <type>
+ <v>TIO = UTO = #objref</v>
+ </type>
+ <desc>
+ <p>This operation returns a UTO in which the interval equals the time interval
+ in the target object and time value is the midpoint of the interval.</p>
+ </desc>
+ </func>
+ </funcs>
+
+</erlref>
+
diff --git a/lib/cosTime/doc/src/CosTime_TimeService.xml b/lib/cosTime/doc/src/CosTime_TimeService.xml
new file mode 100644
index 0000000000..9b20f24794
--- /dev/null
+++ b/lib/cosTime/doc/src/CosTime_TimeService.xml
@@ -0,0 +1,103 @@
+<?xml version="1.0" encoding="latin1" ?>
+<!DOCTYPE erlref SYSTEM "erlref.dtd">
+
+<erlref>
+ <header>
+ <copyright>
+ <year>2000</year>
+ <year>2007</year>
+ <holder>Ericsson AB, All Rights Reserved</holder>
+ </copyright>
+ <legalnotice>
+ The contents of this file are subject to the Erlang Public License,
+ Version 1.1, (the "License"); you may not use this file except in
+ compliance with the License. You should have received a copy of the
+ Erlang Public License along with this software. If not, it can be
+ retrieved online at http://www.erlang.org/.
+
+ Software distributed under the License is distributed on an "AS IS"
+ basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
+ the License for the specific language governing rights and limitations
+ under the License.
+
+ The Initial Developer of the Original Code is Ericsson AB.
+ </legalnotice>
+
+ <title>CosTime_TimeService</title>
+ <prepared>Niclas Eklund</prepared>
+ <responsible>Niclas Eklund</responsible>
+ <docno></docno>
+ <approved>Niclas Eklund</approved>
+ <checked></checked>
+ <date>2000-02-01</date>
+ <rev>1.0</rev>
+ </header>
+ <module>CosTime_TimeService</module>
+ <modulesummary>This module implements the OMG CosTime::TimeService interface.</modulesummary>
+ <description>
+ <p>To get access to the record definitions for the structures use: <br></br>
+<c>-include_lib("cosTime/include/*.hrl").</c></p>
+ </description>
+ <funcs>
+ <func>
+ <name>universal_time(TimeService) -> Reply</name>
+ <fsummary>Return the current time and the Inaccuracy given when starting this application in a UTO</fsummary>
+ <type>
+ <v>TimeService = #objref</v>
+ <v>Reply = UTO | {'EXCEPTION", #'TimerService_TimeUnavailable'{}}</v>
+ <v>UTO = #objref</v>
+ </type>
+ <desc>
+ <p>This operation returns the current time and the Inaccuracy given
+ when starting this application in a UTO. The time base is
+ <em>15 october 1582 00:00</em>. Comparing two time objects which use
+ different time base is, by obvious reasons, pointless.</p>
+ </desc>
+ </func>
+ <func>
+ <name>new_universal_time(TimeService, Time, Inaccuracy, Tdf) -> UTO</name>
+ <fsummary>Create a new UTO object representing the time parameters given</fsummary>
+ <type>
+ <v>TimeService = UTO = #objref</v>
+ <v>Time = Inaccuracy = ulonglong()</v>
+ <v>Tdf = short()</v>
+ </type>
+ <desc>
+ <p>This operation creates a new UTO object representing the time
+ parameters given. This is the only way to create a UTO with an
+ arbitrary time from its components. This is useful when using the
+ Timer Event Service.</p>
+ </desc>
+ </func>
+ <func>
+ <name>uto_from_utc(TimeService, Utc) -> UTO</name>
+ <fsummary>Create a UTO representing the given time in Utc form</fsummary>
+ <type>
+ <v>TimeService = UTO = #objref</v>
+ <v>Utc = #'TimeBase_UtcT'{time, inacclo, inacchi, tdf}</v>
+ <v>time = ulonglong()</v>
+ <v>inacclo = ulong()</v>
+ <v>inacchi = ushort()</v>
+ <v>tdf = short()</v>
+ </type>
+ <desc>
+ <p>This operation is used to create a UTO given a time in the Utc form.</p>
+ </desc>
+ </func>
+ <func>
+ <name>new_interval(TimeService, Lower, Upper) -> TIO</name>
+ <fsummary>Create a new TIO object representing the input parameters</fsummary>
+ <type>
+ <v>TimeService = TIO = #objref</v>
+ <v>Lower = Upper = ulonglong()</v>
+ </type>
+ <desc>
+ <p>This operation is used to create a new TIO object, representing
+ the input parameters. If <em>Lower</em> is greater than Upper
+ BAD_PARAM is raised.</p>
+ </desc>
+ </func>
+ </funcs>
+
+</erlref>
+
diff --git a/lib/cosTime/doc/src/CosTime_UTO.xml b/lib/cosTime/doc/src/CosTime_UTO.xml
new file mode 100644
index 0000000000..73784e50f6
--- /dev/null
+++ b/lib/cosTime/doc/src/CosTime_UTO.xml
@@ -0,0 +1,155 @@
+<?xml version="1.0" encoding="latin1" ?>
+<!DOCTYPE erlref SYSTEM "erlref.dtd">
+
+<erlref>
+ <header>
+ <copyright>
+ <year>2000</year>
+ <year>2007</year>
+ <holder>Ericsson AB, All Rights Reserved</holder>
+ </copyright>
+ <legalnotice>
+ The contents of this file are subject to the Erlang Public License,
+ Version 1.1, (the "License"); you may not use this file except in
+ compliance with the License. You should have received a copy of the
+ Erlang Public License along with this software. If not, it can be
+ retrieved online at http://www.erlang.org/.
+
+ Software distributed under the License is distributed on an "AS IS"
+ basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
+ the License for the specific language governing rights and limitations
+ under the License.
+
+ The Initial Developer of the Original Code is Ericsson AB.
+ </legalnotice>
+
+ <title>CosTime_UTO</title>
+ <prepared>Niclas Eklund</prepared>
+ <responsible>Niclas Eklund</responsible>
+ <docno></docno>
+ <approved>Niclas Eklund</approved>
+ <checked></checked>
+ <date>2000-02-01</date>
+ <rev>1.0</rev>
+ </header>
+ <module>CosTime_UTO</module>
+ <modulesummary>This module implements the OMG CosTime::UTO interface.</modulesummary>
+ <description>
+ <p>To get access to the record definitions for the structures use: <br></br>
+<c>-include_lib("cosTime/include/*.hrl").</c></p>
+ </description>
+ <funcs>
+ <func>
+ <name>'_get_time'(UTO) -> ulonglong()</name>
+ <fsummary>Return the time associated with the target object</fsummary>
+ <type>
+ <v>UTO = #objref</v>
+ </type>
+ <desc>
+ <p>This operation returns the time associated with the target object.</p>
+ </desc>
+ </func>
+ <func>
+ <name>'_get_inaccuracy'(UTO) -> ulonglong()</name>
+ <fsummary>Return the inaccuracy associated with the target object</fsummary>
+ <type>
+ <v>UTO = #objref</v>
+ </type>
+ <desc>
+ <p>This operation returns the inaccuracy associated with the target object.</p>
+ </desc>
+ </func>
+ <func>
+ <name>'_get_tdf'(UTO) -> short()</name>
+ <fsummary>Return the time displacement factor associated with the target object</fsummary>
+ <type>
+ <v>UTO = #objref</v>
+ </type>
+ <desc>
+ <p>This operation returns the time displacement factor associated with
+ the target object.</p>
+ </desc>
+ </func>
+ <func>
+ <name>'_get_utc_time'(UTO) -> UtcT</name>
+ <fsummary>Return the data associated with the target object in Utc form</fsummary>
+ <type>
+ <v>UTO = #objref</v>
+ <v>Utc = #'TimeBase_UtcT'{time, inacclo, inacchi, tdf}</v>
+ <v>time = ulonglong()</v>
+ <v>inacclo = ulong()</v>
+ <v>inacchi = ushort()</v>
+ <v>tdf = short()</v>
+ </type>
+ <desc>
+ <p>This operation returns the data associated with the target object in
+ Utc form.</p>
+ </desc>
+ </func>
+ <func>
+ <name>absolute_time(UTO) -> OtherUTO</name>
+ <fsummary>Create a new UTO object representing the time in the target object added to current time (UTC)</fsummary>
+ <type>
+ <v>UTO = OtherUTO = #objref</v>
+ </type>
+ <desc>
+ <p>This operation create a new UTO object representing the time in the target
+ object added to current time (UTC). The time base is
+ <em>15 october 1582 00:00</em>. Comparing two time objects which use
+ different time base is, by obvious reasons, pointless.
+ Raises DATA_CONVERSION if causes an overflow. This operation is only useful
+ if the target object represents a relative time.</p>
+ </desc>
+ </func>
+ <func>
+ <name>compare_time(UTO, ComparisonType, OtherUTO) -> Reply</name>
+ <fsummary>Compare the time associated with the target object and the given UTO object</fsummary>
+ <type>
+ <v>UTO = OtherUTO = #objref</v>
+ <v>ComparisonType = 'IntervalC' | 'MidC'</v>
+ <v>Reply = 'TCEqualTo' | 'TCLessThan' | 'TCGreaterThan' | 'TCIndeterminate'</v>
+ </type>
+ <desc>
+ <p>This operation compares the time associated with the target object and the
+ given UTO object. The different <c>ComparisonType</c> are:</p>
+ <p></p>
+ <list type="bulleted">
+ <item>'MidC' - only compare the time represented by each object. Furthermore,
+ the target object is always used as the first parameter in the
+ comparison, i.e., if the target object's time is larger
+ 'TCGreaterThan' will be returned.</item>
+ <item>'IntervalC' - also takes the inaccuracy into consideration, i.e.,
+ if the two objects interval overlaps 'TCIndeterminate' is returned,
+ otherwise the as for 'MidC'.</item>
+ </list>
+ </desc>
+ </func>
+ <func>
+ <name>time_to_interval(UTO, OtherUTO) -> TIO</name>
+ <fsummary>Create a TIO representing the interval between the target object and the given UTO midpoint times</fsummary>
+ <type>
+ <v>UTO = OtherUTO = TIO = #objref</v>
+ </type>
+ <desc>
+ <p>This operation returns a TIO representing the interval between the target
+ object and the given UTO midpoint times. The inaccuracy in the objects are
+ not taken into consideration.</p>
+ </desc>
+ </func>
+ <func>
+ <name>interval(UTO) -> TIO</name>
+ <fsummary>Create a TIO object representing the error interval around the time value represented by the target object</fsummary>
+ <type>
+ <v>UTO = TIO = #objref</v>
+ </type>
+ <desc>
+ <p>This operation creates a TIO object representing the error interval
+ around the time value represented by the target object, i.e.,
+ <c>TIO.upper_bound = UTO.time+UTO.inaccuracy</c> and
+ <c>TIO.lower_bound = UTO.time-UTO.inaccuracy</c>.</p>
+ </desc>
+ </func>
+ </funcs>
+
+</erlref>
+
diff --git a/lib/cosTime/doc/src/CosTimerEvent_TimerEventHandler.xml b/lib/cosTime/doc/src/CosTimerEvent_TimerEventHandler.xml
new file mode 100644
index 0000000000..bc1ef39132
--- /dev/null
+++ b/lib/cosTime/doc/src/CosTimerEvent_TimerEventHandler.xml
@@ -0,0 +1,125 @@
+<?xml version="1.0" encoding="latin1" ?>
+<!DOCTYPE erlref SYSTEM "erlref.dtd">
+
+<erlref>
+ <header>
+ <copyright>
+ <year>2000</year>
+ <year>2007</year>
+ <holder>Ericsson AB, All Rights Reserved</holder>
+ </copyright>
+ <legalnotice>
+ The contents of this file are subject to the Erlang Public License,
+ Version 1.1, (the "License"); you may not use this file except in
+ compliance with the License. You should have received a copy of the
+ Erlang Public License along with this software. If not, it can be
+ retrieved online at http://www.erlang.org/.
+
+ Software distributed under the License is distributed on an "AS IS"
+ basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
+ the License for the specific language governing rights and limitations
+ under the License.
+
+ The Initial Developer of the Original Code is Ericsson AB.
+ </legalnotice>
+
+ <title>CosTimerEvent_&shy;TimerEventHandler</title>
+ <shorttitle>..._TimerEventHandler</shorttitle>
+ <prepared>Niclas Eklund</prepared>
+ <responsible>Niclas Eklund</responsible>
+ <docno></docno>
+ <approved>Niclas Eklund</approved>
+ <checked></checked>
+ <date>2000-02-01</date>
+ <rev>1.0</rev>
+ </header>
+ <module>CosTimerEvent_TimerEventHandler</module>
+ <modulesummary>This module implements the OMG CosTimerEvent::TimerEventHandler interface.</modulesummary>
+ <description>
+ <p>To get access to the record definitions for the structures use: <br></br>
+<c>-include_lib("cosTime/include/*.hrl").</c></p>
+ </description>
+ <funcs>
+ <func>
+ <name>'_get_status'(TimerEventHandler) -> Reply</name>
+ <fsummary>Return the status of the target object</fsummary>
+ <type>
+ <v>TimerEventHandler = #objref</v>
+ <v>Reply = 'ESTimeSet' | 'ESTimeCleared' | 'ESTriggered' | 'ESFailedTrigger'</v>
+ </type>
+ <desc>
+ <p>This operation returns the status of the target object. </p>
+ <list type="bulleted">
+ <item>'ESTimeSet' - timer is set to trigger event(s).</item>
+ <item>'ESTimeCleared' - no time set or the timer have been reset.</item>
+ <item>'ESTriggered' - event has already been sent.</item>
+ <item>'ESFailedTrigger' - tried to, but failed, sending the event.</item>
+ </list>
+ <p>If the target object is of type 'TTPeriodic' the status value
+ 'ESTriggered' is not valid.</p>
+ </desc>
+ </func>
+ <func>
+ <name>time_set(TimerEventHandler) -> Reply</name>
+ <fsummary>Return <c>true</c>if the time has been set for an event that is yet to be triggered, <c>false</c>otherwise. The outparameter represents the current time value of the target object</fsummary>
+ <type>
+ <v>TimerEventHandler = #objref</v>
+ <v>Reply = {boolean(), UTO}</v>
+ <v>UTO = #objref</v>
+ </type>
+ <desc>
+ <p>This operation returns <c>true</c> if the time has been set for an event that
+ is yet to be triggered, <c>false</c> otherwise. The outparameter represents
+ the current time value of the target object.</p>
+ </desc>
+ </func>
+ <func>
+ <name>set_timer(TimerEventHandler, TimeType, TriggerTime) -> void()</name>
+ <fsummary>Terminate terminate any previous set trigger, and set a new trigger specified by the <c>TimeType</c>and <c>UTO</c>objects</fsummary>
+ <type>
+ <v>TimerEventHandler = #objref</v>
+ <v>TimeType = 'TTAbsolute' | 'TTRelative' | 'TTPeriodic'</v>
+ <v>TriggerTime = UTO</v>
+ <v>UTO = #objref</v>
+ </type>
+ <desc>
+ <p>This operation terminates any previous set trigger, and set a new trigger
+ specified by the <c>TimeType</c> and <c>UTO</c> objects.</p>
+ <p>The relation between the UTO object and the TimeTypes are:</p>
+ <list type="bulleted">
+ <item>'TTAbsolute' - the UTO object must represent absolute time, i.e.,
+ number of 100 nanoseconds passed since 15 october
+ 1582 00:00.</item>
+ <item>'TTRelative' - the UTO object must represent the from now until when
+ the event should be triggered, e.g., within 30*10^7 nanoseconds.</item>
+ <item>'TTPeriodic' - the same as for 'TTRelative', but this option
+ will trigger an event periodically until timer cancelled.</item>
+ </list>
+ </desc>
+ </func>
+ <func>
+ <name>cancel_timer(TimerEventHandler) -> boolean()</name>
+ <fsummary>Cancel, if possible, triggering of event(s). Return<c>true</c>if an event is actually cancelled, <c>false</c>otherwise</fsummary>
+ <type>
+ <v>TimerEventHandler = #objref</v>
+ </type>
+ <desc>
+ <p>This operation cancel, if possible, the triggering of event(s). Returns
+ <c>true</c> if an event is actually cancelled, <c>false</c> otherwise.</p>
+ </desc>
+ </func>
+ <func>
+ <name>set_data(TimerEventHandler, EventData) -> ok</name>
+ <fsummary>Change the event data sent when triggered</fsummary>
+ <type>
+ <v>TimerEventHandler = #objref</v>
+ <v>EventData = #any</v>
+ </type>
+ <desc>
+ <p>This operation changes the event data sent when triggered.</p>
+ </desc>
+ </func>
+ </funcs>
+
+</erlref>
+
diff --git a/lib/cosTime/doc/src/CosTimerEvent_TimerEventService.xml b/lib/cosTime/doc/src/CosTimerEvent_TimerEventService.xml
new file mode 100644
index 0000000000..90eeb5b2c5
--- /dev/null
+++ b/lib/cosTime/doc/src/CosTimerEvent_TimerEventService.xml
@@ -0,0 +1,84 @@
+<?xml version="1.0" encoding="latin1" ?>
+<!DOCTYPE erlref SYSTEM "erlref.dtd">
+
+<erlref>
+ <header>
+ <copyright>
+ <year>2000</year>
+ <year>2007</year>
+ <holder>Ericsson AB, All Rights Reserved</holder>
+ </copyright>
+ <legalnotice>
+ The contents of this file are subject to the Erlang Public License,
+ Version 1.1, (the "License"); you may not use this file except in
+ compliance with the License. You should have received a copy of the
+ Erlang Public License along with this software. If not, it can be
+ retrieved online at http://www.erlang.org/.
+
+ Software distributed under the License is distributed on an "AS IS"
+ basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
+ the License for the specific language governing rights and limitations
+ under the License.
+
+ The Initial Developer of the Original Code is Ericsson AB.
+ </legalnotice>
+
+ <title>CosTimerEvent_&shy;TimerEventService</title>
+ <shorttitle>..._TimerEventService</shorttitle>
+ <prepared>Niclas Eklund</prepared>
+ <responsible>Niclas Eklund</responsible>
+ <docno></docno>
+ <approved>Niclas Eklund</approved>
+ <checked></checked>
+ <date>2000-02-01</date>
+ <rev>1.0</rev>
+ </header>
+ <module>CosTimerEvent_TimerEventService</module>
+ <modulesummary>This module implements the OMG CosTimerEvent::TimerEventService interface.</modulesummary>
+ <description>
+ <p>To get access to the record definitions for the structures use: <br></br>
+<c>-include_lib("cosTime/include/*.hrl").</c></p>
+ </description>
+ <funcs>
+ <func>
+ <name>register(TimerEventService, CosEventCommPushConsumer, Data) -> TimerEventHandler</name>
+ <fsummary>Create a new <c>TimerEventHandler</c>object which push the given<c>Data</c>to given <c>CosEventCommPushConsumer</c>after the timer have been set</fsummary>
+ <type>
+ <v>TimerEventService = CosEventCommPushConsumer = TimerEventHandler = #objref</v>
+ <v>Data = #any</v>
+ </type>
+ <desc>
+ <p>This operation will create a new <c>TimerEventHandler</c> object which
+ will push given <c>Data</c> to given <c>CosEventCommPushConsumer</c> after
+ the timer have been set.</p>
+ </desc>
+ </func>
+ <func>
+ <name>unregister(TimerEventService, TimerEventHandler) -> ok</name>
+ <fsummary>Terminate the target TimerEventHandler object</fsummary>
+ <type>
+ <v>TimerEventService = TimerEventHandler = #objref</v>
+ </type>
+ <desc>
+ <p>This operation will terminate the given TimerEventHandler.</p>
+ </desc>
+ </func>
+ <func>
+ <name>event_time(TimerEventService, TimerEvent) -> UTO</name>
+ <fsummary>Return a UTO containing the time at which the associated event was triggered</fsummary>
+ <type>
+ <v>TimerEventService = #objref</v>
+ <v>TimerEvent = #'CosTimerEvent_TimerEvent'{utc, event_data}</v>
+ <v>utc = </v>
+ <v>event_data = #any}</v>
+ <v>UTO = #objref</v>
+ </type>
+ <desc>
+ <p>This operation returns a UTO containing the time at which the associated
+ event was triggered.</p>
+ </desc>
+ </func>
+ </funcs>
+
+</erlref>
+
diff --git a/lib/cosTime/doc/src/Makefile b/lib/cosTime/doc/src/Makefile
new file mode 100644
index 0000000000..568e2cd4cc
--- /dev/null
+++ b/lib/cosTime/doc/src/Makefile
@@ -0,0 +1,225 @@
+#
+# %CopyrightBegin%
+#
+# Copyright Ericsson AB 2000-2009. All Rights Reserved.
+#
+# The contents of this file are subject to the Erlang Public License,
+# Version 1.1, (the "License"); you may not use this file except in
+# compliance with the License. You should have received a copy of the
+# Erlang Public License along with this software. If not, it can be
+# retrieved online at http://www.erlang.org/.
+#
+# Software distributed under the License is distributed on an "AS IS"
+# basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
+# the License for the specific language governing rights and limitations
+# under the License.
+#
+# %CopyrightEnd%
+#
+#
+include $(ERL_TOP)/make/target.mk
+include $(ERL_TOP)/make/$(TARGET)/otp.mk
+
+# ----------------------------------------------------
+# Application version
+# ----------------------------------------------------
+include ../../vsn.mk
+VSN=$(COSTIME_VSN)
+APPLICATION=cosTime
+
+# ----------------------------------------------------
+# Include dependency
+# ----------------------------------------------------
+
+ifndef DOCSUPPORT
+include make.dep
+endif
+
+# ----------------------------------------------------
+# Release directory specification
+# ----------------------------------------------------
+RELSYSDIR = $(RELEASE_PATH)/lib/$(APPLICATION)-$(VSN)
+
+# ----------------------------------------------------
+# Target Specs
+# ----------------------------------------------------
+XML_APPLICATION_FILES = ref_man.xml
+XML_REF3_FILES = \
+ cosTime.xml \
+ CosTime_TIO.xml \
+ CosTime_TimeService.xml \
+ CosTime_UTO.xml \
+ CosTimerEvent_TimerEventHandler.xml \
+ CosTimerEvent_TimerEventService.xml \
+
+XML_PART_FILES = \
+ part.xml \
+ part_notes.xml
+XML_CHAPTER_FILES = \
+ ch_contents.xml \
+ ch_introduction.xml \
+ ch_install.xml \
+ ch_example.xml \
+ notes.xml
+
+BOOK_FILES = book.xml
+
+TECHNICAL_DESCR_FILES =
+
+GIF_FILES = \
+ book.gif \
+ notes.gif \
+ ref_man.gif \
+ user_guide.gif
+
+PS_FILES =
+
+# ----------------------------------------------------
+
+INTERNAL_HTML_FILES = $(TECHNICAL_DESCR_FILES:%.xml=$(HTMLDIR)/%.html)
+
+HTML_FILES = $(XML_APPLICATION_FILES:%.xml=$(HTMLDIR)/%.html) \
+ $(XML_PART_FILES:%.xml=$(HTMLDIR)/%.html)
+
+INFO_FILE = ../../info
+EXTRA_FILES = summary.html.src \
+ $(DEFAULT_GIF_FILES) \
+ $(DEFAULT_HTML_FILES) \
+ $(XML_REF3_FILES:%.xml=$(HTMLDIR)/%.html) \
+ $(XML_CHAPTER_FILES:%.xml=$(HTMLDIR)/%.html)
+
+MAN3_FILES = $(XML_REF3_FILES:%.xml=$(MAN3DIR)/%.3)
+
+ifdef DOCSUPPORT
+
+HTML_REF_MAN_FILE = $(HTMLDIR)/index.html
+
+TOP_PDF_FILE = $(PDFDIR)/$(APPLICATION)-$(VSN).pdf
+
+else
+
+TEX_FILES_BOOK = \
+ $(BOOK_FILES:%.xml=%.tex)
+TEX_FILES_REF_MAN = $(XML_REF3_FILES:%.xml=%.tex) \
+ $(XML_APPLICATION_FILES:%.xml=%.tex)
+TEX_FILES_USERS_GUIDE = \
+ $(XML_CHAPTER_FILES:%.xml=%.tex)
+
+TOP_PDF_FILE = $(APPLICATION)-$(VSN).pdf
+
+TOP_PS_FILE = $(APPLICATION)-$(VSN).ps
+
+$(TOP_PDF_FILE): book.dvi ../../vsn.mk
+ $(DVI2PS) $(DVIPS_FLAGS) -f $< | $(DISTILL) $(DISTILL_FLAGS) > $@
+
+$(TOP_PS_FILE): book.dvi ../../vsn.mk
+ $(DVI2PS) $(DVIPS_FLAGS) -f $< > $@
+
+endif
+
+# ----------------------------------------------------
+# FLAGS
+# ----------------------------------------------------
+XML_FLAGS +=
+DVIPS_FLAGS +=
+
+# ----------------------------------------------------
+# Targets
+# ----------------------------------------------------
+$(HTMLDIR)/%.gif: %.gif
+ $(INSTALL_DATA) $< $@
+
+ifdef DOCSUPPORT
+
+docs: pdf html man
+
+$(TOP_PDF_FILE): $(XML_FILES)
+
+pdf: $(TOP_PDF_FILE)
+
+html: gifs $(HTML_REF_MAN_FILE)
+
+clean clean_docs:
+ rm -rf $(HTMLDIR)/*
+ rm -f $(MAN3DIR)/*
+ rm -f $(TOP_PDF_FILE) $(TOP_PDF_FILE:%.pdf=%.fo)
+ rm -f errs core *~
+
+else
+
+ifeq ($(DOCTYPE),pdf)
+docs: pdf
+else
+ifeq ($(DOCTYPE),ps)
+docs: ps
+else
+docs: html gifs man
+endif
+endif
+
+pdf: $(TOP_PDF_FILE)
+
+ps: $(TOP_PS_FILE)
+
+html: $(HTML_FILES) $(INTERNAL_HTML_FILES)
+
+clean clean_docs clean_tex:
+ rm -f $(TEX_FILES_USERS_GUIDE) $(TEX_FILES_REF_MAN) $(TEX_FILES_BOOK)
+ rm -f $(HTML_FILES) $(MAN3_FILES)
+ rm -f $(TOP_PDF_FILE) $(TOP_PS_FILE)
+ rm -f errs core *~ *xmls_output *xmls_errs $(LATEX_CLEAN)
+
+endif
+
+man: $(MAN3_FILES)
+
+gifs: $(GIF_FILES:%=$(HTMLDIR)/%)
+
+$(INDEX_TARGET): $(INDEX_SRC)
+ sed -e 's;%VSN%;$(VSN);' $(INDEX_SRC) > $(INDEX_TARGET)
+
+debug opt:
+
+# ----------------------------------------------------
+# Release Target
+# ----------------------------------------------------
+include $(ERL_TOP)/make/otp_release_targets.mk
+
+ifdef DOCSUPPORT
+
+release_docs_spec: docs
+ $(INSTALL_DIR) $(RELSYSDIR)/doc/pdf
+ $(INSTALL_DATA) $(TOP_PDF_FILE) $(RELSYSDIR)/doc/pdf
+ $(INSTALL_DIR) $(RELSYSDIR)/doc/html
+ $(INSTALL_DATA) $(HTMLDIR)/* \
+ $(RELSYSDIR)/doc/html
+ $(INSTALL_DATA) $(INFO_FILE) $(RELSYSDIR)
+ $(INSTALL_DIR) $(RELEASE_PATH)/man/man3
+ $(INSTALL_DATA) $(MAN3DIR)/* $(RELEASE_PATH)/man/man3
+else
+
+ifeq ($(DOCTYPE),pdf)
+release_docs_spec: pdf
+ $(INSTALL_DIR) $(RELEASE_PATH)/pdf
+ $(INSTALL_DATA) $(TOP_PDF_FILE) $(RELEASE_PATH)/pdf
+else
+ifeq ($(DOCTYPE),ps)
+release_docs_spec: ps
+ $(INSTALL_DIR) $(RELEASE_PATH)/ps
+ $(INSTALL_DATA) $(TOP_PS_FILE) $(RELEASE_PATH)/ps
+else
+release_docs_spec: docs
+ $(INSTALL_DIR) $(RELSYSDIR)/doc/html
+ $(INSTALL_DATA) $(GIF_FILES) $(EXTRA_FILES) $(HTML_FILES) \
+ $(RELSYSDIR)/doc/html
+ $(INSTALL_DATA) $(INFO_FILE) $(RELSYSDIR)
+ $(INSTALL_DIR) $(RELEASE_PATH)/man/man3
+ $(INSTALL_DATA) $(MAN3_FILES) $(RELEASE_PATH)/man/man3
+
+endif
+endif
+
+endif
+
+release_spec:
+
diff --git a/lib/cosTime/doc/src/book.gif b/lib/cosTime/doc/src/book.gif
new file mode 100644
index 0000000000..94b3868792
--- /dev/null
+++ b/lib/cosTime/doc/src/book.gif
Binary files differ
diff --git a/lib/cosTime/doc/src/book.xml b/lib/cosTime/doc/src/book.xml
new file mode 100644
index 0000000000..f9d27f8d0b
--- /dev/null
+++ b/lib/cosTime/doc/src/book.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="latin1" ?>
+<!DOCTYPE book SYSTEM "book.dtd">
+
+<book xmlns:xi="http://www.w3.org/2001/XInclude">
+ <header titlestyle="normal">
+ <copyright>
+ <year>2000</year><year>2009</year>
+ <holder>Ericsson AB. All Rights Reserved.</holder>
+ </copyright>
+ <legalnotice>
+ The contents of this file are subject to the Erlang Public License,
+ Version 1.1, (the "License"); you may not use this file except in
+ compliance with the License. You should have received a copy of the
+ Erlang Public License along with this software. If not, it can be
+ retrieved online at http://www.erlang.org/.
+
+ Software distributed under the License is distributed on an "AS IS"
+ basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
+ the License for the specific language governing rights and limitations
+ under the License.
+
+ </legalnotice>
+
+ <title>cosTime</title>
+ <prepared>Niclas Eklund</prepared>
+ <docno></docno>
+ <date>2000-01-31</date>
+ <rev>1.0</rev>
+ </header>
+ <insidecover>
+ </insidecover>
+ <pagetext>cosTime</pagetext>
+ <preamble>
+ <contents level="2"></contents>
+ </preamble>
+ <parts lift="no">
+ <xi:include href="part.xml"/>
+ </parts>
+ <applications>
+ <xi:include href="ref_man.xml"/>
+ </applications>
+ <releasenotes>
+ <xi:include href="notes.xml"/>
+ </releasenotes>
+ <listofterms></listofterms>
+ <index></index>
+</book>
+
diff --git a/lib/cosTime/doc/src/ch_contents.xml b/lib/cosTime/doc/src/ch_contents.xml
new file mode 100644
index 0000000000..1e223f24fc
--- /dev/null
+++ b/lib/cosTime/doc/src/ch_contents.xml
@@ -0,0 +1,74 @@
+<?xml version="1.0" encoding="latin1" ?>
+<!DOCTYPE chapter SYSTEM "chapter.dtd">
+
+<chapter>
+ <header>
+ <copyright>
+ <year>2000</year><year>2009</year>
+ <holder>Ericsson AB. All Rights Reserved.</holder>
+ </copyright>
+ <legalnotice>
+ The contents of this file are subject to the Erlang Public License,
+ Version 1.1, (the "License"); you may not use this file except in
+ compliance with the License. You should have received a copy of the
+ Erlang Public License along with this software. If not, it can be
+ retrieved online at http://www.erlang.org/.
+
+ Software distributed under the License is distributed on an "AS IS"
+ basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
+ the License for the specific language governing rights and limitations
+ under the License.
+
+ </legalnotice>
+
+ <title>The cosTime Application</title>
+ <prepared>Niclas Eklund</prepared>
+ <docno></docno>
+ <date>2000-01-31</date>
+ <rev>1.0</rev>
+ <file>ch_contents.xml</file>
+ </header>
+
+ <section>
+ <title>Content Overview</title>
+ <p>The cosTime documentation is divided into three sections:
+ </p>
+ <list type="bulleted">
+ <item>
+ <p>PART ONE - The User's Guide
+ <br></br>
+Description of the cosTime Application including
+ services and a small tutorial demonstrating
+ the development of a simple service.</p>
+ </item>
+ <item>
+ <p>PART TWO - Release Notes
+ <br></br>
+A concise history of cosTime.</p>
+ </item>
+ <item>
+ <p>PART THREE - The Reference Manual
+ <br></br>
+ A quick reference guide, including a
+ brief description, to all the functions available in cosTime.</p>
+ </item>
+ </list>
+ </section>
+
+ <section>
+ <title>Brief Description of the User's Guide</title>
+ <p>The User's Guide contains the following parts:</p>
+ <list type="bulleted">
+ <item>
+ <p>cosTime overview</p>
+ </item>
+ <item>
+ <p>cosTime installation</p>
+ </item>
+ <item>
+ <p>A tutorial example</p>
+ </item>
+ </list>
+ </section>
+</chapter>
+
diff --git a/lib/cosTime/doc/src/ch_example.xml b/lib/cosTime/doc/src/ch_example.xml
new file mode 100644
index 0000000000..9664331726
--- /dev/null
+++ b/lib/cosTime/doc/src/ch_example.xml
@@ -0,0 +1,112 @@
+<?xml version="1.0" encoding="latin1" ?>
+<!DOCTYPE chapter SYSTEM "chapter.dtd">
+
+<chapter>
+ <header>
+ <copyright>
+ <year>2000</year><year>2009</year>
+ <holder>Ericsson AB. All Rights Reserved.</holder>
+ </copyright>
+ <legalnotice>
+ The contents of this file are subject to the Erlang Public License,
+ Version 1.1, (the "License"); you may not use this file except in
+ compliance with the License. You should have received a copy of the
+ Erlang Public License along with this software. If not, it can be
+ retrieved online at http://www.erlang.org/.
+
+ Software distributed under the License is distributed on an "AS IS"
+ basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
+ the License for the specific language governing rights and limitations
+ under the License.
+
+ </legalnotice>
+
+ <title>cosTime Examples</title>
+ <prepared>Niclas Eklund</prepared>
+ <docno></docno>
+ <date>2000-01-31</date>
+ <rev>A</rev>
+ <file>ch_example.xml</file>
+ </header>
+
+ <section>
+ <title>A Tutorial on How to Create a Simple Service</title>
+
+ <section>
+ <title>Initiate the Application</title>
+ <p>To use the complete cosTime application Time and Timer Event Services
+ must be installed. The application is then started by using
+ <c>cosTime:start()</c>. To get access to Time Service or Timer Event Service,
+ use <c>start_time_service/2</c> or <c>start_timerevent_service/1.</c></p>
+ <p>The Time Service are global, i.e., there may only exist one instance per
+ Orber domain.</p>
+ <p>The Timer Event Service is locally registered, i.e., there may only exist
+ one instance per node.</p>
+ <note>
+ <p>The Time and Timer Event Service use the time base
+ <em>15 october 1582 00:00</em>. Performing operations using other time
+ bases will not yield correct result. Furthermore, time and inaccuracy
+ must be expressed in 100 nano seconds.</p>
+ </note>
+ </section>
+
+ <section>
+ <title>How to Run Everything</title>
+ <p>Below is a short transcript on how to run cosTime. </p>
+ <code type="none">
+
+%% Start Mnesia and Orber
+mnesia:delete_schema([node()]),
+mnesia:create_schema([node()]),
+orber:install([node()]),
+mnesia:start(),
+orber:start(),
+
+%% Install Time Service in the IFR.
+cosTime:install_time(),
+
+%% Install Timer Event Service in the IFR. Which, require
+%% the Time Service and cosEvent or cosNotification
+%% application to be installed.
+cosNotification:install(),
+cosTime:install_timerevent(),
+
+%% Now start the application and necessary services.
+cosTime:start(),
+%% Tdf == Time displacement factor
+%% Inaccuracy measured in 100 nano seconds
+TS=cosTime:start_time_service(TDF, Inaccuracy),
+TES=cosTime:start_timerevent_service(TS),
+
+%% Access a cosNotification Proxy Push Consumer. How this is
+%% done is implementation specific.
+ProxyPushConsumer = ....
+
+%% How we construct the event is also implementation specific.
+AnyEvent = ....
+
+%% Create a new relative universal time.
+%% Time measured in 100 nano seconds.
+UTO='CosTime_TimeService':
+ new_universal_time(TS, Time, Inaccuracy, TDF),
+EH='CosTimerEvent_TimerEventService':
+ register(TES, ProxyPushConsumer, AnyEvent),
+
+%% If we want to trigger one event Time*10^-7 seconds from now:
+'CosTimerEvent_TimerEventHandler':set_timer(EH, 'TTRelative', UTO),
+
+%% If we want to trigger an event every Time*10^-7 seconds, starting
+%% Time*10^-7 seconds from now:
+'CosTimerEvent_TimerEventHandler':set_timer(EH, 'TTPeriodic', UTO),
+
+%% If we want to use absolute time we must retrieve such an object.
+%% One way is to convert the one we got, UTO, by using:
+UTO2='CosTime_UTO':absolute_time(UTO),
+%% If any other way is used, the correct time base MUST be used, i.e.,
+%% 15 october 1582 00:00.
+'CosTimerEvent_TimerEventHandler':set_timer(EH, 'TTAbsolute', UTO2),
+ </code>
+ </section>
+ </section>
+</chapter>
+
diff --git a/lib/cosTime/doc/src/ch_install.xml b/lib/cosTime/doc/src/ch_install.xml
new file mode 100644
index 0000000000..fe2b25c2f6
--- /dev/null
+++ b/lib/cosTime/doc/src/ch_install.xml
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="latin1" ?>
+<!DOCTYPE chapter SYSTEM "chapter.dtd">
+
+<chapter>
+ <header>
+ <copyright>
+ <year>2000</year><year>2009</year>
+ <holder>Ericsson AB. All Rights Reserved.</holder>
+ </copyright>
+ <legalnotice>
+ The contents of this file are subject to the Erlang Public License,
+ Version 1.1, (the "License"); you may not use this file except in
+ compliance with the License. You should have received a copy of the
+ Erlang Public License along with this software. If not, it can be
+ retrieved online at http://www.erlang.org/.
+
+ Software distributed under the License is distributed on an "AS IS"
+ basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
+ the License for the specific language governing rights and limitations
+ under the License.
+
+ </legalnotice>
+
+ <title>Installing cosTime</title>
+ <prepared>Niclas Eklund</prepared>
+ <docno></docno>
+ <date>2000-01-31</date>
+ <rev></rev>
+ <file>ch_install.xml</file>
+ </header>
+
+ <section>
+ <title>Installation Process </title>
+ <p>This chapter describes how to install
+ <seealso marker="cosTime">cosTime</seealso> in an Erlang Environment.
+ </p>
+
+ <section>
+ <title>Preparation</title>
+ <p>Before starting the installation process for cosTime,
+ the application Orber must be running.</p>
+ </section>
+
+ <section>
+ <title>Configuration</title>
+ <p>When using both the Time and TimerEvent Services the <c>cosTime</c> application
+ first must be installed using <c>cosTime:install_time()</c> and
+ <c>cosTime:install_timerevent()</c>, followed by <c>cosTime:start()</c>.
+ Now we can choose which can start the servers by using
+ <c>cosTime:start_time_service(Tdf, Inaccuracy)</c>
+ and <c>cosTime:start_timerevent_service(TimeService)</c>.</p>
+ </section>
+ </section>
+</chapter>
+
diff --git a/lib/cosTime/doc/src/ch_introduction.xml b/lib/cosTime/doc/src/ch_introduction.xml
new file mode 100644
index 0000000000..ca23168089
--- /dev/null
+++ b/lib/cosTime/doc/src/ch_introduction.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="latin1" ?>
+<!DOCTYPE chapter SYSTEM "chapter.dtd">
+
+<chapter>
+ <header>
+ <copyright>
+ <year>2000</year><year>2009</year>
+ <holder>Ericsson AB. All Rights Reserved.</holder>
+ </copyright>
+ <legalnotice>
+ The contents of this file are subject to the Erlang Public License,
+ Version 1.1, (the "License"); you may not use this file except in
+ compliance with the License. You should have received a copy of the
+ Erlang Public License along with this software. If not, it can be
+ retrieved online at http://www.erlang.org/.
+
+ Software distributed under the License is distributed on an "AS IS"
+ basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
+ the License for the specific language governing rights and limitations
+ under the License.
+
+ </legalnotice>
+
+ <title>Introduction to cosTime</title>
+ <prepared>Niclas Eklund</prepared>
+ <docno></docno>
+ <date>2000-01-31</date>
+ <rev></rev>
+ <file>ch_introduction.xml</file>
+ </header>
+
+ <section>
+ <title>Overview</title>
+ <p>The cosTime application is Time and TimerEvent Services compliant with the <url href="http://www.omg.org">OMG</url>
+ Services CosTime and CosTimerEvent.
+ </p>
+
+ <section>
+ <title>Purpose and Dependencies</title>
+ <p>This application use <c>calender:now_to_universal_time(Now)</c> to create a
+ UTC. Hence, the underlying OS must deliver a correct result when calling
+ <c>erlang:now()</c>.</p>
+ <p><em>cosTime</em> is dependent on <em>Orber</em>, which provides CORBA functionality in an Erlang environment.</p>
+ <p><em>cosTimerEvent</em> is dependent on <em>Orber</em> and <em>cosNotification</em>,
+ which provides CORBA functionality and Event handling in an Erlang environment.</p>
+ </section>
+
+ <section>
+ <title>Prerequisites</title>
+ <p>To fully understand the concepts presented in the
+ documentation, it is recommended that the user is familiar
+ with distributed programming, CORBA, the Orber and cosNotification applications.
+ </p>
+ <p>Recommended reading includes <em>CORBA, Fundamentals and Programming - Jon Siegel</em> and <em>Open Telecom Platform Documentation Set</em>. It is also helpful to have read <em>Concurrent Programming in Erlang</em>.</p>
+ </section>
+ </section>
+</chapter>
+
diff --git a/lib/cosTime/doc/src/cosTime.xml b/lib/cosTime/doc/src/cosTime.xml
new file mode 100644
index 0000000000..8bc80f2322
--- /dev/null
+++ b/lib/cosTime/doc/src/cosTime.xml
@@ -0,0 +1,174 @@
+<?xml version="1.0" encoding="latin1" ?>
+<!DOCTYPE erlref SYSTEM "erlref.dtd">
+
+<erlref>
+ <header>
+ <copyright>
+ <year>2000</year>
+ <year>2007</year>
+ <holder>Ericsson AB, All Rights Reserved</holder>
+ </copyright>
+ <legalnotice>
+ The contents of this file are subject to the Erlang Public License,
+ Version 1.1, (the "License"); you may not use this file except in
+ compliance with the License. You should have received a copy of the
+ Erlang Public License along with this software. If not, it can be
+ retrieved online at http://www.erlang.org/.
+
+ Software distributed under the License is distributed on an "AS IS"
+ basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
+ the License for the specific language governing rights and limitations
+ under the License.
+
+ The Initial Developer of the Original Code is Ericsson AB.
+ </legalnotice>
+
+ <title>cosTime</title>
+ <prepared>Niclas Eklund</prepared>
+ <responsible>Niclas Eklund</responsible>
+ <docno></docno>
+ <approved>Niclas Eklund</approved>
+ <checked></checked>
+ <date>2000-01-31</date>
+ <rev>PA1</rev>
+ </header>
+ <module>cosTime</module>
+ <modulesummary>The main module of the cosTime application</modulesummary>
+ <description>
+ <p>To get access to the record definitions for the structures use: <br></br>
+<c>-include_lib("cosTime/include/*.hrl").</c></p>
+ <p>This module contains the functions for starting and stopping the application.</p>
+ <p>This application use the time base <em>15 october 1582 00:00</em>.
+ Performing operations using other time bases will not yield correct result.</p>
+ <p>The OMG CosTime specification defines the operation
+ <c>secure_universal_time</c>. As of today we cannot provide this functionality
+ considering the criteria demanded to fulfill the OMG specification.</p>
+ <p>When using this application, time and inaccuracy supplied by the user must
+ be given in number of <em>100 nano seconds</em>. The
+ <em>Time Displacement Factor</em> is positive east of the meridian, while
+ those to the west are negative.</p>
+ <p>This application use <c>calender:now_to_universal_time(Now)</c> to create a
+ UTC. Hence, the underlying OS must deliver a correct result when calling
+ <c>erlang:now()</c>.</p>
+ <p>When determining the inaccuracy of the system, the user should consider the
+ way the time objects will be used. Communicating with other ORB's, add a
+ substantial overhead and should be taken into consideration.</p>
+ </description>
+ <funcs>
+ <func>
+ <name>install_time() -> Return</name>
+ <fsummary>Install the cosTime Time Service part application</fsummary>
+ <type>
+ <v>Return = ok | {'EXIT', Reason}</v>
+ </type>
+ <desc>
+ <p>This operation installs the cosTime Time Service part application.</p>
+ </desc>
+ </func>
+ <func>
+ <name>uninstall_time() -> Return</name>
+ <fsummary>Uninstall the cosTime Time Service part application</fsummary>
+ <type>
+ <v>Return = ok | {'EXIT', Reason}</v>
+ </type>
+ <desc>
+ <p>This operation uninstalls the cosTime Time Service part application.</p>
+ </desc>
+ </func>
+ <func>
+ <name>install_timerevent() -> Return</name>
+ <fsummary>Install the cosTime Timer Event Service part application</fsummary>
+ <type>
+ <v>Return = ok | {'EXIT', Reason}</v>
+ </type>
+ <desc>
+ <p>This operation installs the cosTime Timer Event Service part application.</p>
+ <note>
+ <p>The Timer Event Service part requires <em>Time Service</em> part and
+ <em>cosEvent</em> or the <em>cosNotification</em> application to be installed
+ first.</p>
+ </note>
+ </desc>
+ </func>
+ <func>
+ <name>uninstall_timerevent() -> Return</name>
+ <fsummary>Uninstall the cosTime Timer Event Service part application</fsummary>
+ <type>
+ <v>Return = ok | {'EXIT', Reason}</v>
+ </type>
+ <desc>
+ <p>This operation uninstalls the cosTime Timer Event Service part application.</p>
+ </desc>
+ </func>
+ <func>
+ <name>start() -> Return</name>
+ <fsummary>Start the cosTime application</fsummary>
+ <type>
+ <v>Return = ok | {error, Reason}</v>
+ </type>
+ <desc>
+ <p>This operation starts the cosTime application.</p>
+ </desc>
+ </func>
+ <func>
+ <name>stop() -> Return</name>
+ <fsummary>Stop the cosTime application</fsummary>
+ <type>
+ <v>Return = ok | {error, Reason}</v>
+ </type>
+ <desc>
+ <p>This operation stops the cosTime application.</p>
+ </desc>
+ </func>
+ <func>
+ <name>start_time_service(Tdf, Inaccuracy) -> Return</name>
+ <fsummary>Start a Time Service object</fsummary>
+ <type>
+ <v>Tdf = short()</v>
+ <v>Inaccuracy = ulonglong(), eq. #100 nano seconds</v>
+ <v>Return = ok | {'EXCEPTION', #'BAD_PARAM'{}}</v>
+ </type>
+ <desc>
+ <p>This operation starts a Time Service server. Please note that there
+ may only be exactly one Time Service active at a time. The <c>Inaccuracy</c>
+ parameter defines the inaccuracy the underlying OS will introduce. Remember
+ to take into account latency when passing time object between nodes.</p>
+ </desc>
+ </func>
+ <func>
+ <name>stop_time_service(TimeService) -> ok</name>
+ <fsummary>Stop the target Time Service object</fsummary>
+ <type>
+ <v>TimeService = #objref</v>
+ </type>
+ <desc>
+ <p>This operation stops the Time Service object.</p>
+ </desc>
+ </func>
+ <func>
+ <name>start_timerevent_service(TimeService) -> ok</name>
+ <fsummary>Start a Timer Event Service object</fsummary>
+ <type>
+ <v>TimeService = #objref</v>
+ </type>
+ <desc>
+ <p>This operation starts a Timer Event Service server. Please note that there
+ may only be exactly one Timer Event Service per node active at a time. The
+ supplied TimeServcie reference will be the object Timer Event Service
+ contacts to get access to a new UTC.</p>
+ </desc>
+ </func>
+ <func>
+ <name>stop_timerevent_service(TimerEventService) -> ok</name>
+ <fsummary>Stop the target Timer Event Service object</fsummary>
+ <type>
+ <v>TimerEventService = #objref</v>
+ </type>
+ <desc>
+ <p>This operation stops the Timer Event Service object.</p>
+ </desc>
+ </func>
+ </funcs>
+
+</erlref>
+
diff --git a/lib/cosTime/doc/src/fascicules.xml b/lib/cosTime/doc/src/fascicules.xml
new file mode 100644
index 0000000000..0678195e07
--- /dev/null
+++ b/lib/cosTime/doc/src/fascicules.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="latin1" ?>
+<!DOCTYPE fascicules SYSTEM "fascicules.dtd">
+
+<fascicules>
+ <fascicule file="part" href="part_frame.html" entry="no">
+ User's Guide
+ </fascicule>
+ <fascicule file="ref_man" href="ref_man_frame.html" entry="yes">
+ Reference Manual
+ </fascicule>
+ <fascicule file="part_notes" href="part_notes_frame.html" entry="no">
+ Release Notes
+ </fascicule>
+ <fascicule file="" href="../../../../doc/print.html" entry="no">
+ Off-Print
+ </fascicule>
+</fascicules>
+
diff --git a/lib/cosTime/doc/src/make.dep b/lib/cosTime/doc/src/make.dep
new file mode 100644
index 0000000000..69a584ab95
--- /dev/null
+++ b/lib/cosTime/doc/src/make.dep
@@ -0,0 +1,22 @@
+# ----------------------------------------------------
+# >>>> Do not edit this file <<<<
+# This file was automaticly generated by
+# /home/otp/bin/docdepend
+# ----------------------------------------------------
+
+
+# ----------------------------------------------------
+# TeX files that the DVI file depend on
+# ----------------------------------------------------
+
+book.dvi: CosTime_TIO.tex CosTime_TimeService.tex CosTime_UTO.tex \
+ CosTimerEvent_TimerEventHandler.tex CosTimerEvent_TimerEventService.tex \
+ book.tex ch_contents.tex ch_example.tex ch_install.tex \
+ ch_introduction.tex cosTime.tex part.tex ref_man.tex
+
+# ----------------------------------------------------
+# Source inlined when transforming from source to LaTeX
+# ----------------------------------------------------
+
+book.tex: ref_man.xml
+
diff --git a/lib/cosTime/doc/src/notes.gif b/lib/cosTime/doc/src/notes.gif
new file mode 100644
index 0000000000..e000cca26a
--- /dev/null
+++ b/lib/cosTime/doc/src/notes.gif
Binary files differ
diff --git a/lib/cosTime/doc/src/notes.xml b/lib/cosTime/doc/src/notes.xml
new file mode 100644
index 0000000000..afa10980e8
--- /dev/null
+++ b/lib/cosTime/doc/src/notes.xml
@@ -0,0 +1,187 @@
+<?xml version="1.0" encoding="latin1" ?>
+<!DOCTYPE chapter SYSTEM "chapter.dtd">
+
+<chapter>
+ <header>
+ <copyright>
+ <year>2000</year><year>2009</year>
+ <holder>Ericsson AB. All Rights Reserved.</holder>
+ </copyright>
+ <legalnotice>
+ The contents of this file are subject to the Erlang Public License,
+ Version 1.1, (the "License"); you may not use this file except in
+ compliance with the License. You should have received a copy of the
+ Erlang Public License along with this software. If not, it can be
+ retrieved online at http://www.erlang.org/.
+
+ Software distributed under the License is distributed on an "AS IS"
+ basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
+ the License for the specific language governing rights and limitations
+ under the License.
+
+ </legalnotice>
+
+ <title>cosTime Release Notes</title>
+ <prepared>Niclas Eklund</prepared>
+ <responsible>Niclas Eklund</responsible>
+ <docno></docno>
+ <approved></approved>
+ <checked></checked>
+ <date>2000-01-31</date>
+ <rev>A</rev>
+ <file>notes.xml</file>
+ </header>
+
+ <section>
+ <title>cosTime 1.1.7</title>
+
+ <section>
+ <title>Improvements and New Features</title>
+ <list type="bulleted">
+ <item>
+ <p>
+ The documentation is now built with open source tools (xsltproc and fop)
+ that exists on most platforms. One visible change is that the frames are removed.</p>
+ <p>
+ Own Id: OTP-8201 Aux Id:</p>
+ </item>
+ </list>
+ </section>
+ </section>
+
+ <section>
+ <title>cosTime 1.1.6</title>
+
+ <section>
+ <title>Improvements and New Features</title>
+ <list type="bulleted">
+ <item>
+ <p>Obsolete guards, e.g. record vs is_record, has been changed
+ to avoid compiler warnings.</p>
+ <p>Own id: OTP-7987</p>
+ </item>
+ </list>
+ </section>
+ </section>
+
+ <section>
+ <title>cosTime 1.1.5</title>
+
+ <section>
+ <title>Improvements and New Features</title>
+ <list type="bulleted">
+ <item>
+ <p>Updated file headers.</p>
+ <p>Own id: OTP-7837</p>
+ </item>
+ </list>
+ </section>
+ </section>
+
+ <section>
+ <title>cosTime 1.1.4</title>
+
+ <section>
+ <title>Improvements and New Features</title>
+ <list type="bulleted">
+ <item>
+ <p>Documentation source included in open source releases.</p>
+ <p>Own id: OTP-7595</p>
+ </item>
+ </list>
+ </section>
+ </section>
+
+ <section>
+ <title>cosTime 1.1.3</title>
+
+ <section>
+ <title>Improvements and New Features</title>
+ <list type="bulleted">
+ <item>
+ <p>Updated file headers.</p>
+ <p>Own id: OTP-7011</p>
+ </item>
+ </list>
+ </section>
+ </section>
+
+ <section>
+ <title>cosTime 1.1.2</title>
+
+ <section>
+ <title>Improvements and New Features</title>
+ <list type="bulleted">
+ <item>
+ <p>The documentation source has been converted from SGML to XML.</p>
+ <p>Own id: OTP-6754</p>
+ </item>
+ </list>
+ </section>
+ </section>
+
+ <section>
+ <title>cosTime 1.1.1</title>
+
+ <section>
+ <title>Improvements and New Features</title>
+ <list type="bulleted">
+ <item>
+ <p>Minor Makefile changes.</p>
+ <p>Own id: OTP-6701</p>
+ </item>
+ </list>
+ </section>
+ </section>
+
+ <section>
+ <title>cosTime 1.1</title>
+
+ <section>
+ <title>Improvements and New Features</title>
+ <list type="bulleted">
+ <item>
+ <p>The stub/skeleton-files generated by IC have been improved,
+ i.e., depending on the IDL-files, reduced the size of the
+ erl- and beam-files and decreased dependencies off Orber's
+ Interface Repository. It is necessary to re-compile all IDL-files
+ and use COS-applications, including Orber, compiled with
+ IC-4.2.</p>
+ <p>Own id: OTP-4576</p>
+ </item>
+ </list>
+ </section>
+ </section>
+
+ <section>
+ <title>cosTime 1.0.1.1</title>
+
+ <section>
+ <title>Incompatibilities</title>
+ <list type="bulleted">
+ <item>
+ <p>An includepath in <c>CosTimerEvent.idl</c> have been
+ changed. Hence, if you include this file you should check
+ your include paths for your IDL-file(s), i.e., add
+ the path to CosEventComm.idl.</p>
+ <p>Own Id: OTP-4093</p>
+ </item>
+ </list>
+ </section>
+ </section>
+
+ <section>
+ <title>cosTime 1.0.1</title>
+
+ <section>
+ <title>Improvements and New Features</title>
+ <list type="bulleted">
+ <item>
+ <p>First release of the cosTime application.</p>
+ <p>Own Id: -</p>
+ </item>
+ </list>
+ </section>
+ </section>
+</chapter>
+
diff --git a/lib/cosTime/doc/src/part.xml b/lib/cosTime/doc/src/part.xml
new file mode 100644
index 0000000000..fe6a50c18d
--- /dev/null
+++ b/lib/cosTime/doc/src/part.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="latin1" ?>
+<!DOCTYPE part SYSTEM "part.dtd">
+
+<part xmlns:xi="http://www.w3.org/2001/XInclude">
+ <header>
+ <copyright>
+ <year>2000</year><year>2009</year>
+ <holder>Ericsson AB. All Rights Reserved.</holder>
+ </copyright>
+ <legalnotice>
+ The contents of this file are subject to the Erlang Public License,
+ Version 1.1, (the "License"); you may not use this file except in
+ compliance with the License. You should have received a copy of the
+ Erlang Public License along with this software. If not, it can be
+ retrieved online at http://www.erlang.org/.
+
+ Software distributed under the License is distributed on an "AS IS"
+ basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
+ the License for the specific language governing rights and limitations
+ under the License.
+
+ </legalnotice>
+
+ <title>cosTime User's Guide</title>
+ <prepared>Niclas Eklund</prepared>
+ <docno></docno>
+ <date>2000-01-31</date>
+ <rev>1.0</rev>
+ </header>
+ <description>
+ <p>The <em>cosTime</em> application is an Erlang implementation of the OMG
+ CORBA Time and TimerEvent Services.</p>
+ </description>
+ <xi:include href="ch_contents.xml"/>
+ <xi:include href="ch_introduction.xml"/>
+ <xi:include href="ch_install.xml"/>
+ <xi:include href="ch_example.xml"/>
+</part>
+
diff --git a/lib/cosTime/doc/src/part_notes.xml b/lib/cosTime/doc/src/part_notes.xml
new file mode 100644
index 0000000000..3f45a11ea7
--- /dev/null
+++ b/lib/cosTime/doc/src/part_notes.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="latin1" ?>
+<!DOCTYPE part SYSTEM "part.dtd">
+
+<part xmlns:xi="http://www.w3.org/2001/XInclude">
+ <header>
+ <copyright>
+ <year>2000</year><year>2009</year>
+ <holder>Ericsson AB. All Rights Reserved.</holder>
+ </copyright>
+ <legalnotice>
+ The contents of this file are subject to the Erlang Public License,
+ Version 1.1, (the "License"); you may not use this file except in
+ compliance with the License. You should have received a copy of the
+ Erlang Public License along with this software. If not, it can be
+ retrieved online at http://www.erlang.org/.
+
+ Software distributed under the License is distributed on an "AS IS"
+ basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
+ the License for the specific language governing rights and limitations
+ under the License.
+
+ </legalnotice>
+
+ <title>cosTime Release Notes</title>
+ <prepared>Niclas Eklund</prepared>
+ <docno></docno>
+ <date>2000-01-31</date>
+ <rev>1.0</rev>
+ </header>
+ <description>
+ <p>The cosTime Application is an Erlang implementation of the OMG
+ CORBA Time and TimerEvent Services.</p>
+ </description>
+ <xi:include href="notes.xml"/>
+</part>
+
diff --git a/lib/cosTime/doc/src/ref_man.gif b/lib/cosTime/doc/src/ref_man.gif
new file mode 100644
index 0000000000..b13c4efd53
--- /dev/null
+++ b/lib/cosTime/doc/src/ref_man.gif
Binary files differ
diff --git a/lib/cosTime/doc/src/ref_man.xml b/lib/cosTime/doc/src/ref_man.xml
new file mode 100644
index 0000000000..18de68a4c3
--- /dev/null
+++ b/lib/cosTime/doc/src/ref_man.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="latin1" ?>
+<!DOCTYPE application SYSTEM "application.dtd">
+
+<application xmlns:xi="http://www.w3.org/2001/XInclude">
+ <header>
+ <copyright>
+ <year>2000</year><year>2009</year>
+ <holder>Ericsson AB. All Rights Reserved.</holder>
+ </copyright>
+ <legalnotice>
+ The contents of this file are subject to the Erlang Public License,
+ Version 1.1, (the "License"); you may not use this file except in
+ compliance with the License. You should have received a copy of the
+ Erlang Public License along with this software. If not, it can be
+ retrieved online at http://www.erlang.org/.
+
+ Software distributed under the License is distributed on an "AS IS"
+ basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
+ the License for the specific language governing rights and limitations
+ under the License.
+
+ </legalnotice>
+
+ <title>cosTime Reference Manual</title>
+ <prepared>Niclas Eklund</prepared>
+ <docno></docno>
+ <date>2000-01-31</date>
+ <rev>1.0</rev>
+ </header>
+ <description>
+ <p>The <em>cosTime</em> application is an Erlang implementation of the OMG
+ CORBA Time and TimerEvent Services.</p>
+ </description>
+ <xi:include href="cosTime.xml"/>
+ <xi:include href="CosTime_TIO.xml"/>
+ <xi:include href="CosTime_TimeService.xml"/>
+ <xi:include href="CosTime_UTO.xml"/>
+ <xi:include href="CosTimerEvent_TimerEventHandler.xml"/>
+ <xi:include href="CosTimerEvent_TimerEventService.xml"/>
+</application>
+
diff --git a/lib/cosTime/doc/src/summary.html.src b/lib/cosTime/doc/src/summary.html.src
new file mode 100644
index 0000000000..78e383d275
--- /dev/null
+++ b/lib/cosTime/doc/src/summary.html.src
@@ -0,0 +1 @@
+Orber OMG Timer and TimerEvent Services.
diff --git a/lib/cosTime/doc/src/user_guide.gif b/lib/cosTime/doc/src/user_guide.gif
new file mode 100644
index 0000000000..e6275a803d
--- /dev/null
+++ b/lib/cosTime/doc/src/user_guide.gif
Binary files differ