+
    nDj                       ^ RI Ht ^ RIHtHtHt ^ RIHtHt ^ RIt	^ RI
t^ RIt]'       d   ^ RIHt ]RR/R R ll4       t]RR/R	 R
 ll4       t]RR/R R ll4       tRRRRRRRR/R R lltR R ltR R ltRR R lltRR R lltR# )    )annotations)datetime	timedeltatimezone)TYPE_CHECKINGoverloadN)RecordingStream	recordingc               (    V ^8  d   QhRRRRRRRR/# )	   timelinestrr
   RecordingStream | NonesequenceintreturnNone )formats   "N/data/cameron/venvs/s3viz/lib/python3.14/site-packages/rerun_sdk/rerun/time.py__annotate__r      s     d ds d*@ dSV d[_ d    c                   R # Nr   )r   r
   r   s   &$$r   set_timer      s    adr   c               (    V ^8  d   QhRRRRRRRR/# )	r   r   r   r
   r   durationz(int | float | timedelta | np.timedelta64r   r   r   )r   s   "r   r   r      s2       & 7	
 
r   c                   R # r   r   )r   r
   r   s   &$$r   r   r           r   c               (    V ^8  d   QhRRRRRRRR/# )	r   r   r   r
   r   	timestampz&int | float | datetime | np.datetime64r   r   r   )r   s   "r   r   r       s2       & 6	
 
r   c                   R # r   r   )r   r
   r!   s   &$$r   r   r      r   r   r   r   r!   c               0    V ^8  d   QhRRRRRRRRR	R
RR/# )r   r   r   r
   r   r   z
int | Noner   z/int | float | timedelta | np.timedelta64 | Noner!   zBint | float | datetime | np.datetime64 | pa.TimestampScalar | Noner   r   r   )r   s   "r   r   r   (   sO     E
 E
E
 &E
 	E

 >E
 RE
 
E
r   c                  \        R W#V3 4       4      ^8w  d   \        RV  R24      hVe0   \        P                  ! T TVe   VP	                  4       MRR7       R# Ve;   \        V4      p\        P                  ! T TVe   VP	                  4       MRR7       R# Ve;   \        V4      p\        P                  ! T TVe   VP	                  4       MRR7       R# R# )a  
Set the current time of a timeline for this thread.

Used for all subsequent logging on the same thread, until the next call to
[`rerun.set_time`][], [`rerun.reset_time`][] or [`rerun.disable_timeline`][].

For example: `set_time("frame_nr", sequence=frame_nr)`.

There is no requirement of monotonicity. You can move the time backwards if you like.

You are expected to set exactly ONE of the arguments `sequence`, `duration`, or `timestamp`.
You may NOT change the type of a timeline, so if you use `duration` for a specific timeline,
you must only use `duration` for that timeline going forward.

The columnar equivalent to this function is [`rerun.TimeColumn`][].

Parameters
----------
timeline:
    The name of the timeline to set the time for.
recording:
    Specifies the [`rerun.RecordingStream`][] to use.
    If left unspecified, defaults to the current active data recording (if there is one).
    See also: [`rerun.init`][], [`rerun.set_global_data_recording`][].
sequence:
    Used for sequential indices, like `frame_nr`.
    Must be an integer.
duration:
    Used for relative times, like `time_since_start`.
    Must either be in seconds, a [`datetime.timedelta`][], or [`numpy.timedelta64`][].
    For nanosecond precision, use `numpy.timedelta64(nanoseconds, 'ns')`.
timestamp:
    Used for absolute time indices, like `capture_time`.
    Must either be in seconds since Unix epoch, a [`datetime.datetime`][], or [`numpy.datetime64`][].
    For nanosecond precision, use `numpy.datetime64(nanoseconds, 'ns')`.

c              3  (   "   T F  qR Jx  K
  	  R # 5ir   r   ).0xs   & r   	<genexpr>set_time.<locals>.<genexpr>U   s     
B"AQD="As   zXset_time: Exactly one of `sequence`, `duration`, and `timestamp` must be set (timeline='z')Nr
   )	sum
ValueErrorbindingsset_time_sequence	to_nativeto_nanosset_time_duration_nanosto_nanos_since_epoch$set_time_timestamp_nanos_since_epoch)r   r
   r   r   r!   nanoss   &$$$$ r   r   r   (   s    Z 
B8y"A
BBaGfgofpprs
 	
 ""/8/Di))+$	

 
	"((/8/Di))+$	

 
	$Y/55/8/Di))+$	
 
r   c                    V ^8  d   QhRRRR/# )r   r   zBint | np.integer | float | np.float64 | timedelta | np.timedelta64r   r   r   )r   s   "r   r   r   p   s     
 
Y 
^a 
r   c                   \        V \        P                  4      '       d!   V P                  R 4      P                  R4      # \        V \        4      '       d!   \        RV P                  4       ,          4      # \        V \        \        P                  34      '       d   R\        V 4      ,          # \        V \        \        P                  34      '       d   \        R\        V 4      ,          4      # \        R\        V 4       24      h)ztimedelta64[ns]int64    eAi ʚ;zVset_time: duration must be an int, float, timedelta, or numpy.timedelta64 object, got )
isinstancenptimedelta64astyper   roundtotal_secondsr   integerfloatfloating	TypeErrortype)r   s   &r   r0   r0   p   s    (BNN++0188AA	Hi	(	(S8113344	HsBJJ/	0	0s8},,		
 
 S5?*++deijresdtu
 	
r   c                    V ^8  d   QhRRRR/# )r   r!   zUint | np.integer | float | np.float64 | datetime | np.datetime64 | pa.TimestampScalarr   r   r   )r   s   "r   r   r      s     
 
d

r   c                   \        V \        \        P                  \        \        P
                  34      '       d9   V R 8  d   \        R4      h\        \        P                  ! RV ,          4      4      # \        V \        4      '       d   \        V R4      '       d:   V P                  4       p\        VP                  R4      P                  R4      4      # V P                  f"   V P                  \        P                  R7      p MV P!                  \        P                  4      p \        R^^\        P                  R7      p\        \        P                  ! RW,
          P#                  4       ,          4      4      # \        V \        P$                  4      '       d*   \        V P                  R4      P                  R4      4      # \        V \&        P(                  4      '       d   \        V P*                  4      # \-        R\/        V 4       24      h)	g   vH7BzVset_time: Expected seconds since unix epoch, but it looks like this is in millisecondsr8   to_datetime64zdatetime64[ns]r7   )tzinfoi  znset_time: timestamp must be an int, float, datetime, numpy.datetime64, or pyarrow.TimestampScalar object, got )r9   r   r:   r?   r@   float64r,   r=   r   hasattrrF   r<   rG   replacer   utc
astimezoner>   
datetime64paTimestampScalarvaluerB   rC   )r!   rM   epochs   &  r   r2   r2      s    )c2::ubjjABBtuvv288C)O,--	Ix	(	(9o..(1(?(?(AJz(()9:AA'JKK#!)))>I!,,X\\:Iq!HLL9288C9#4"C"C"EEFGG	Ir}}	-	-9##$45<<WEFF	Ir11	2	29??##|  ~B  CL  ~M  }N  O
 	
r   c               $    V ^8  d   QhRRRRRR/# )r   r   r   r
   r   r   r   r   )r   s   "r   r   r      s#      s /E QU r   c                ^    \         P                  ! T Ve   VP                  4       MRR7       R# )az  
Clear time information for the specified timeline on this thread.

Parameters
----------
timeline:
    The name of the timeline to clear the time for.
recording:
    Specifies the [`rerun.RecordingStream`][] to use.
    If left unspecified, defaults to the current active data recording, if there is one.
    See also: [`rerun.init`][], [`rerun.set_global_data_recording`][].

Nr*   )r-   disable_timeliner/   )r   r
   s   &&r   rT   rT      s(     +4+@)%%'dr   c                    V ^8  d   QhRRRR/# )r   r
   r   r   r   r   )r   s   "r   r   r      s      0 D r   c                \    \         P                  ! V e   V P                  4       MRR7       R# )a  
Clear all timeline information on this thread.

This is the same as calling `disable_timeline` for all of the active timelines.

Used for all subsequent logging on the same thread,
until the next call to [`rerun.set_time`][].

Parameters
----------
recording:
    Specifies the [`rerun.RecordingStream`][] to use.
    If left unspecified, defaults to the current active data recording, if there is one.
    See also: [`rerun.init`][], [`rerun.set_global_data_recording`][].

Nr*   )r-   
reset_timer/   r*   s   &r   rW   rW      s%    $ +4+@)%%'dr   r   )
__future__r   r   r   r   typingr   r   numpyr:   pyarrowrN   rerun_bindingsr-   rerun.recording_streamr	   r   r0   r2   rT   rW   r   r   r   <module>r^      s    " 2 2 *   !6 
 d4 d 
 d 
 )- 
 
 )- 
E
 )-E
  	E

 AEE
 UYE
P
$
@, r   