o_sfu_core/engine/room/
mod.rs1#[cfg(any(test, feature = "testing-transport"))]
14#[expect(non_snake_case, reason = "test modules map to local TESTS directories")]
15pub(crate) mod TESTS;
16mod definition;
17mod directory;
18mod effects;
19mod factory;
20mod instance;
21mod manager;
22mod media_graph;
23mod membership;
24mod outbound;
25mod placement;
26mod read_model;
27mod recording;
28mod source_policy;
29mod state;
30mod transition;
31
32#[cfg(any(test, feature = "testing-transport"))]
33pub use TESTS::api::{NegotiatedPublish, RoomManagerTestApi, RoomTestApi};
34pub use factory::{RoomAdmissionPolicy, RoomConfig, RoomRuntimePolicy};
35pub(crate) use instance::RoomUserOperation;
36use instance::SourcePolicyGuard;
37pub use instance::{
38 Room, RoomJoinError, RoomManagerJoinError, RoomManagerServeError, RoomMediaCounts,
39};
40#[cfg(any(test, feature = "testing-transport"))]
41pub use manager::JoinPlacementTestGate;
42pub use manager::{
43 RoomManager, RoomUserAdmission, RuntimeRoomDirectorySnapshot, RuntimeRoomStatsSnapshot,
44};
45#[cfg(any(test, feature = "testing-transport"))]
46pub use media_graph::ConsumerRouteState;
47pub use membership::{JoinUserRequest, RoomUserPermissions, UserCloseReason};
48pub use outbound::{
49 BroadcastPayload, BroadcastPayloadError, DEFAULT_USER_OUTBOUND_QUEUE_BYTE_CAPACITY,
50 DEFAULT_USER_OUTBOUND_QUEUE_CAPACITY, MAX_BROADCAST_PAYLOAD_BYTES, RemoteTrackProjection,
51 RemoteTrackSnapshot, RoomEventMessage, UserOutbound, UserOutboundEvent, UserOutboundOverflow,
52 UserOutboundOverflowKind, UserOutboundQueueLimits, UserOutboundReceiver, UserOutboundSendError,
53 UserOutboundSender,
54};
55pub use placement::{RoomRuntimeContext, RouterPlacement, RouterPlacements, RouterPlacementsError};
56pub use read_model::{
57 IncomingBitrateSnapshot, RoomDetailCapture, RoomOverviewCapture, RoomUserCapture,
58 RoomUserStatsSnapshot, RoomUsersCapture,
59};
60#[cfg(feature = "internal-benchmarks")]
61pub use source_policy::run_source_policy_turn_for_benchmark;
62pub(crate) use transition::{DeactivateIntentOutcome, PublishIntentOutcome};
63
64#[cfg(any(test, feature = "testing-transport"))]
65pub use self::effects::batch::RoomEffectContext;