+
    nDjU                      a  0 t $ ^ RIHt ^ RIt^ RIHtHt ^ RIHt ^ RI	t
^ RIHtHt ^ RIHtHtHt ^ RI	HtHt ^RIHt ]'       d   ^ RIt^ R	IHt ^ R
IHt R R lt]],          ],          tR]R&   RRRR/R R lltR8RRRR/R R llltR9RR/R R llltR9RR/R R llltR8R R llt RRRRRRRRR R!R"R/R# R$ llt!R%RR&RRR/R' R( llt"]! R)4      R8R* R+ ll4       t#R,R-R.RR/R0RRR1R!R2RR3R4R5RRRRR/
R6 R7 llt$R# ):    )annotationsN)TYPE_CHECKING	TypeAlias)
deprecated)BlueprintLikecreate_in_memory_blueprint)BinaryStreamRecordingStreamget_application_id)FileSinkGrpcSink)_spawn_viewer)	Recording)r
   c                    V ^8  d   QhRRRR/# )   	recordingRecordingStream | Nonereturnbool )formats   "O/data/cameron/venvs/s3viz/lib/python3.14/site-packages/rerun_sdk/rerun/sinks.py__annotate__r      s     ! !$: !t !    c                t    V e!   \         P                  ! V P                  4      # \         P                  ! 4       # N)bindings
is_enabledinnerr   s   &r   is_recording_enabledr!      s,    ""9??33  r   r   LogSinkLikedefault_blueprintr   c               (    V ^8  d   QhRRRRRRRR/# )	r   sinksr"   r#   BlueprintLike | Noner   r   r   Noner   )r   s   "r   r   r   %   s6     O OO+O &O 
	Or   c                
   \        4       p\        4       pV F-  pWS9   d   VP                  V4       K  VP                  V4       K/  	  V'       d%   \        RRP                  R V 4       4       24      h\	        V4      '       g   \
        P                  ! R4       R# \        V4      pVf   \        R4      hRpV e   \        VV R7      P                  p\        P                  ! . VOTVe   VP                  4       MRR7       R# )	aX  
Stream data to multiple different sinks.

Duplicate sinks are not allowed. For example, two [`rerun.GrpcSink`][]s that
use the same `url` will cause this function to throw a `ValueError`.

This _replaces_ existing sinks. Calling `rr.init(spawn=True)`, `rr.spawn()`,
`rr.connect_grpc()` or similar followed by `set_sinks` will result in only
the sinks passed to `set_sinks` remaining active.

Only data logged _after_ the `set_sinks` call will be logged to the newly attached sinks.

Parameters
----------
sinks:
    A list of sinks to wrap.

    See [`rerun.GrpcSink`][], [`rerun.FileSink`][], [`rerun.BinaryStream`][].
default_blueprint:
    Optionally set a default blueprint to use for this application. If the application
    already has an active blueprint, the new blueprint won't become active until the user
    clicks the "reset blueprint" button. If you want to activate the new blueprint
    immediately, instead use the [`rerun.send_blueprint`][] API.
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`][].

Example
-------
```py
rr.init("rerun_example_tee")
rr.set_sinks(
    rr.GrpcSink(),
    rr.FileSink("data.rrd")
)
rr.log("my/point", rr.Points3D(position=[1.0, 2.0, 3.0]))
```

zDuplicate sinks detected: z, c              3  8   "   T F  p\        V4      x  K  	  R # 5ir   )str).0ds   & r   	<genexpr>set_sinks.<locals>.<genexpr>\   s     ?[PZ1APZs   z,Rerun is disabled - set_sinks() call ignoredNhNo application id found. You must call rerun.init before connecting to a viewer, or provide a recording.application_id	blueprint)r#   r   )setadd
ValueErrorjoinr!   loggingwarningr   r   storager   	set_sinks	to_native)r#   r   r%   seen
duplicatessinkr1   blueprint_storages   $$*     r   r:   r:   %   s    ^ 5DJ<NN4 HHTN	 
 5dii?[PZ?[6[5\]^^	**FG'	2Nv
 	

 $6)'
 ' 	
 %++4+@)%%'dr   c               (    V ^8  d   QhRRRRRRRR/# )	r   url
str | Noner#   r&   r   r   r   r'   r   )r   s   "r   r   r   w   s2     7 7	7 ,7 &	7
 
7r   c               &   \        V4      '       g   \        P                  ! R4       R# ^ RIHp V! V4      pVf   \        R4      hRpVe   \        VVR7      P                  p\        P                  ! T TVe   VP                  4       MRR7       R# )az  
Connect to a remote Rerun Viewer on the given URL.

This function returns immediately.

Parameters
----------
url:
    The URL to connect to.

    The scheme must be one of `rerun://`, `rerun+http://`, or `rerun+https://`,
    and the pathname must be `/proxy`.

    The default is `rerun+http://127.0.0.1:9876/proxy`.
default_blueprint:
    Optionally set a default blueprint to use for this application. If the application
    already has an active blueprint, the new blueprint won't become active until the user
    clicks the "reset blueprint" button. If you want to activate the new blueprint
    immediately, instead use the [`rerun.send_blueprint`][] API.
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`][].

z/Rerun is disabled - connect_grpc() call ignoredNr   r/   r0   )rA   r#   r   )r!   r7   r8   rerun.recording_streamr   r5   r   r9   r   connect_grpcr;   )rA   r#   r   r   r1   r?   s   &$$   r   rF   rF   w   s    >  	**IJ9'	2Nv
 	

 $6)'
 ' 	
 ++4+@)%%'dr   write_footerTc          
     ,    V ^8  d   QhRRRRRRRRR	R
/# )r   pathzstr | pathlib.Pathr#   r&   r   r   rG   r   r   r'   r   )r   s   "r   r   r      sA     D D
D+D &D
 D 
Dr   c               <   \        V4      '       g   \        P                  ! R4       R# ^ RIHp V! VR7      pVf   \        R4      hRpVe   \        VVR7      P                  p\        P                  ! \        V 4      TVe   VP                  4       MRVR7       R# )a8  
Stream all log-data to a file.

Call this _before_ you log any data!

The Rerun Viewer is able to read continuously from the resulting rrd file while it is being written.
However, depending on your OS and configuration, changes may not be immediately visible due to file caching.
This is a common issue on Windows and (to a lesser extent) on MacOS.

Parameters
----------
path:
    The path to save the data to.
default_blueprint
    Optionally set a default blueprint to use for this application. If the application
    already has an active blueprint, the new blueprint won't become active until the user
    clicks the "reset blueprint" button. If you want to activate the new blueprint
    immediately, instead use the [`rerun.send_blueprint`][] API.
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`][].
write_footer:
    Whether to emit a complete RRD footer (including a manifest of every chunk) at the
    end of the stream. Defaults to `True`.

    Producing a footer keeps per-chunk metadata in memory for the lifetime of the sink,
    which grows linearly with the number of chunks logged. Pass `write_footer=False` for
    long-running streaming sessions; the resulting file is still a valid RRD and a footer
    can be added after the fact via `rerun rrd optimize`.

    *Warning*: lack of footer will significantly hurt random-access performance and some
    tools (e.g. LazyStore) may not work properly.

\Rerun is disabled - save() call ignored. You must call rerun.init before saving a recording.NrD   r    r/   r0   )rI   r#   r   rG   )r!   r7   r8   rE   r   r5   r   r9   r   saver*   r;   )rI   r#   r   rG   r   r1   r?   s   &&&$   r   rL   rL      s    V  	**vw9')<Nv
 	

 $6)'
 ' 	
 MMY++4+@)%%'d!	r   c               (    V ^8  d   QhRRRRRRRR/# )	r   r#   r&   r   r   rG   r   r   r'   r   )r   s   "r   r   r      s0     < <+<%< 	<
 
<r   c               (   \        V4      '       g   \        P                  ! R4       R# ^ RIHp V! VR7      pVf   \        R4      hRpV e   \        VV R7      P                  p\        P                  ! TVe   VP                  4       MRVR7       R# )a  
Stream all log-data to stdout.

Pipe it into a Rerun Viewer to visualize it.

Call this _before_ you log any data!

If there isn't any listener at the other end of the pipe, the `RecordingStream` will
default back to `buffered` mode, in order not to break the user's terminal.

Parameters
----------
default_blueprint
    Optionally set a default blueprint to use for this application. If the application
    already has an active blueprint, the new blueprint won't become active until the user
    clicks the "reset blueprint" button. If you want to activate the new blueprint
    immediately, instead use the [`rerun.send_blueprint`][] API.
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`][].
write_footer:
    Whether to emit a complete RRD footer (including a manifest of every chunk) at the
    end of the stream. Defaults to `True`. See [`rerun.save`][] for details and trade-offs.

    *Warning*: lack of footer will significantly hurt random-access performance and some
    tools (e.g. LazyStore) may not work properly.

rK   NrD   r    r/   r0   )r#   r   rG   )r!   r7   r8   rE   r   r5   r   r9   r   stdoutr;   )r#   r   rG   r   r1   r?   s   &&$   r   rO   rO      s    H  	**vw9')<Nv
 	

 $6)'
 ' 	
 OO++4+@)%%'d!r   c                    V ^8  d   QhRRRR/# )r   r   r   r   r'   r   )r   s   "r   r   r   7  s      0 D r   c                \    \         P                  ! V e   V P                  4       MRR7       R# )a  
Closes all gRPC connections, servers, and files.

Closes all gRPC connections, servers, and files that have been opened with
[`rerun.connect_grpc`], [`rerun.serve`], [`rerun.save`] or [`rerun.spawn`].

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   
disconnectr;   r    s   &r   rR   rR   7  s%      +4+@)%%'dr   	grpc_portserver_memory_limit1GiBnewest_firstFcors_allow_originc               4    V ^8  d   QhRRRRRRRRR	R
RRRR/# )r   rS   z
int | Noner#   r&   r   r   rT   r*   rV   r   rW   zlist[str] | Noner   r   )r   s   "r   r   r   L  sY     S SS ,S &	S
 S S (S 	Sr   c           	     >   \        V4      '       g   \        P                  ! R4       R# ^ RIHp V! VR7      pVf   \        R4      hRpVe   \        VVR7      P                  p\        P                  ! T TTVe   VP                  4       MRTT;'       g    . R7      # )	a	  
Serve log-data over gRPC.

You can connect to this server with the native viewer using `rerun rerun+http://localhost:{grpc_port}/proxy`.

The gRPC server will buffer all log data in memory so that late connecting viewers will get all the data.
You can control the amount of data buffered by the gRPC server with the `server_memory_limit` argument.
Once reached, the earliest logged data will be dropped. Static data is never dropped.

Returns the URI of the server so you can connect the viewer to it.

This function returns immediately. In order to keep the server running, you must keep the Python process running
as well.

NOTE: The grpc server is associated with a [`rerun.RecordingStream`][] object. By default, if no other recording
was specified, this will be the global recording. When that `RecordingStream` is disconnected, or otherwise goes
out of scope, the associated gRPC server will be shut down.
See: [Issue: #12313](https://github.com/rerun-io/rerun/issues/12313) for possible complications.

Parameters
----------
grpc_port:
    The port to serve the gRPC server on (defaults to 9876)
default_blueprint:
    Optionally set a default blueprint to use for this application. If the application
    already has an active blueprint, the new blueprint won't become active until the user
    clicks the "reset blueprint" button. If you want to activate the new blueprint
    immediately, instead use the [`rerun.send_blueprint`][] API.
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`][].
server_memory_limit:
    Maximum amount of memory to use for buffering log data for clients that connect late.
    This can be a percentage of the total ram (e.g. "50%") or an absolute value (e.g. "4GB").
newest_first:
    If `True`, the server will start sending back the newest messages _first_.
    If `False`, the messages will be played back in the order they arrived.
cors_allow_origin:
    Additional origin patterns allowed to make CORS requests to the gRPC server.
    By default, only localhost and rerun.io are allowed.
    Patterns are matched against the full `Origin` header (e.g. `"https://example.com:8080"`),
    using glob-style matching where `*` matches any sequence of characters.
    Examples: `"https://*.example.com"`, `"https://example.com:8080"`,
    `"https://example.com:*"`.

z-Rerun is disabled - serve_grpc() call ignoredz[rerun is disabled]rD   r    Nr/   r0   )rT   r#   r   rV   rW   )r!   r7   r8   rE   r   r5   r   r9   r   
serve_grpcr;   )	rS   r#   r   rT   rV   rW   r   r1   r?   s	   $$$$$$   r   rZ   rZ   L  s    p  	**GH$9')<Nv
 	

 $6)'
 ' 	
 /++4+@)%%'d!+11r r   make_activemake_defaultc          
     ,    V ^8  d   QhRRRRRRRRRR	/# )
r   r2   r   r[   r   r\   r   r   r   r'   r   )r   s   "r   r   r     s<     - -- - 	-
 &- 
-r   c                   ^ RI Hp V! VR7      pVf   \        R4      h\        WPR7      P                  p\
        P                  ! TTTVe   VP                  4       MRR7       R# )a  
Create a blueprint from a `BlueprintLike` and send it to the `RecordingStream`.

Parameters
----------
blueprint:
    A blueprint object to send to the viewer.
make_active:
    Immediately make this the active blueprint for the associated `app_id`.
    Note that setting this to `false` does not mean the blueprint may not still end
    up becoming active. In particular, if `make_default` is true and there is no other
    currently active blueprint.
make_default:
    Make this the default blueprint for the `app_id`.
    The default blueprint will be used as the template when the user resets the
    blueprint for the app. It will also become the active blueprint if no other
    blueprint is currently active.
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`][].

rD   r    NzMNo application id found. You must call rerun.init before sending a blueprint.r0   )rE   r   r5   r   r9   r   send_blueprintr;   )r2   r[   r\   r   r   r1   r?   s   &$$$   r   r_   r_     s^    > :')<Nhii2.fnn+4+@)%%'d	r   zdsend_recording is deprecated since 0.32. Use rerun.experimental.send_chunks(reader.store()) instead.c               $    V ^8  d   QhRRRRRR/# )r   rrdr   r   r   r   r'   r   )r   s   "r   r   r     s#      	 .D PT r   c                    \        VR7      pVf   \        R4      h\        P                  ! V P                  Ve   VP                  4       MRR7       R# )u  
Send a `Recording` loaded from a `.rrd` to the `RecordingStream`.

!!! Warning
    ⚠️ This API is experimental and may change or be removed in future versions! ⚠️

Parameters
----------
rrd:
    A recording loaded from a `.rrd` file.
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`][].

r    NzMNo application id found. You must call rerun.init before sending a recording.)r   r5   r   send_recording	_internalr;   )ra   r   r1   s   && r   rc   rc     sH    ( ()<Nhii+4+@)%%'dr   porti&  connectmemory_limitz75%hide_welcome_screendetach_processexecutable_namererunexecutable_pathc               D    V ^8  d   QhRRRRRRRRRRR	RR
RRRRRRRRR/# )r   re   intrf   r   rg   r*   rT   rh   ri   rj   rl   rB   r#   r&   r   r   r   r'   r   )r   s   "r   r   r     s     S
 S

S
 S
 	S

 S
 S
 S
 S
  S
 ,S
 &S
 
S
r   c        
   
         \        V	4      '       g   \        P                  ! R4       R# \        V VVVVVVR7       V'       d   \	        RV  R2V	VR7       R# R# )a*  
Spawn a Rerun Viewer, listening on the given port.

This is often the easiest and best way to use Rerun.
Just call this once at the start of your program.

You can also call [rerun.init][] with a `spawn=True` argument.

Parameters
----------
port:
    The port to listen on.
connect:
    also connect to the viewer and stream logging data to it.
memory_limit:
    An upper limit on how much memory the Rerun Viewer should use.
    When this limit is reached, Rerun will drop the oldest data.
    Example: `16GB` or `50%` (of system total).
server_memory_limit:
    An upper limit on how much memory the gRPC server running
    in the same process as the Rerun Viewer should use.
    When this limit is reached, Rerun will drop the oldest data.
    Example: `16GB` or `50%` (of system total).

    Defaults to `1GiB`.
hide_welcome_screen:
    Hide the normal Rerun welcome screen.
detach_process:
    Detach Rerun Viewer process from the application process.
executable_name:
    Specifies the name of the Rerun executable.
    You can omit the `.exe` suffix on Windows.

    Defaults to `rerun`.
executable_path:
    Enforce a specific executable to use instead of searching
    through PATH for `executable_name`.

    Unspecified by default.
recording:
    Specifies the [`rerun.RecordingStream`][] to use if `connect = True`.
    If left unspecified, defaults to the current active data recording, if there is one.
    See also: [`rerun.init`][], [`rerun.set_global_data_recording`][].
default_blueprint
    Optionally set a default blueprint to use for this application. If the application
    already has an active blueprint, the new blueprint won't become active until the user
    clicks the "reset blueprint" button. If you want to activate the new blueprint
    immediately, instead use the [`rerun.send_blueprint`][] API.

z)Rerun is disabled - spawn() call ignored.N)re   rg   rT   rh   ri   rj   rl   zrerun+http://127.0.0.1:z/proxy)r   r#   )r!   r7   r8   r   rF   )
re   rf   rg   rT   rh   ri   rj   rl   r#   r   s
   $$$$$$$$$$r   spawnrp     sa    @  	**CD!//%'' %dV62/	
 r   r   )NN)%__conditional_annotations__
__future__r   r7   typingr   r   typing_extensionsr   rerun_bindingsr   rerun.blueprint.apir   r   rE   r	   r
   r   r   r   _spawnr   pathlibrerun.recordingr   r!   r"   __annotations__r:   rF   rL   rO   rR   rZ   r_   rc   rp   )rq   s   @r   <module>r{      s   " "  + ( ! I T T
 ")6! "H,|;Y ;O.2O )-Od7 /37 )-	7 7tD
 D DN< 	< <~*S S /3S )-	S
  &S S +/Sl- - 	-
 )--` j8S
S
 S
 	S

  &S
 !&S
  S
 #S
 #'S
 /3S
 )-S
 S
r   