CosTime_TIO(3)
π CosTime_TIO β bestie edition π
okay so this is CosTime_TIO(3), an Erlang module definition page, and it's literally the module that implements the OMG CosTime::TIO interface. yes we're doing CORBA time stuff today. slay. πβ¨
πΈ NAME πΈ
CosTime_TIO β this module implements the OMG CosTime::TIO interface. that's it, that's the whole vibe. π
π DESCRIPTION π
so like, if you wanna get access to the record definitions for the structures (and bestie, you DO), you're gonna do this:
-include_lib("cosTime/include/*.hrl").
that's the line. put it in your file. thank me later. π
β¨ EXPORTS β¨
π¦ '_get_time_interval'(TIO) -> TimeInterval
Types:
TIO = #objref
TimeInterval = #'TimeBase_IntervalT{lower_bound, upper_bound}
lower_bound = upper_bound = ulonglong
this operation hands you back the interval that's associated with the target object. that's it. it's giving "just tell me the interval". lowkey the most chill function here. π«Ά
π spans(TIO, UTO) -> Reply
Types:
TIO = UTO = OtherTIO = #objref
Reply = {OverlapType, OtherTIO}
OverlapType = 'OTContainer' | 'OTContained' | 'OTOverlap' | 'OTNoOverlap'
so this one returns an OverlapType based on how the interval in the target object and the timerange represented by the UTO object overlap. it's a whole vibe check between two time intervals ngl. β³
here's the tea on the out parameter:
- if the
OverlapTypeis'OTNoOverlap', the out parameter represents the gap between the two intervals. - if the
OverlapTypeis one of the others, the out parameter represents the overlap interval.
and the definitions of the OverlapTypes are, in order:
'OTContainer'β target object's lower and upper limits are, respectively, less or equal to and greater or equal to the given object's. (so the target is wrapping around it. main character energy, honestly.)'OTContained'β target object's lower and upper limits are, respectively, greater or equal to and less or equal to the given object's. (target's the one getting wrapped. we've all been there.)'OTOverlap'β target object's interval overlaps the given object's. (they're both in it together, periodt.)'OTNoOverlap'β target object's interval does not overlap the given object's. (it's giving avoidant attachment. π)
π overlaps(TIO, OtherTIO) -> Reply
Types:
TIO = OtherTIO = AnotherTIO = #objref
Reply = {OverlapType, AnotherTIO}
OverlapType = 'OTContainer' | 'OTContained' | 'OTOverlap' | 'OTNoOverlap'
this operation returns an OverlapType depending on how the interval in the target object and the timerange represented by the TIO object overlap. and the OverlapTypes? they're described under spans/2 bestie, go read that one. i'm not typing it twice. π
β time(TIO) -> UTO
Types:
TIO = UTO = #objref
this operation returns a UTO where the interval equals the time interval in the target object, and the time value is the midpoint of the interval. it's literally the "meet me in the middle" of time functions. iconic. π
ngl, these are all #objref-flavoured CORBA object references, so make sure your include line from up top is in there or nothing's gonna compile. no cap.
that's the whole page, you ate it, no crumbs left. π«Άβ¨
signed off with love by Ericsson AB β this is cosTime version 5.2.2, and the page itself is CosTime_TIO(3). mwah. πππ¦
π¦ where this page comes from
- fedora 43: erlang-cosTime 1:5.2.2-1.fc43 Β· Apache-2.0
- fedora 44: erlang-cosTime 1:5.2.2-1.fc44 Β· Apache-2.0
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms