package Ġch . lead rian . samp . k amp . streamer . runtime Ċ Ċ import Ġch . lead rian . samp . k amp . core . api . callback . Callback Listener Manager Ċ import Ġch . lead rian . samp . k amp . core . api . data . Vector 3 D Ċ import Ġch . lead rian . samp . k amp . streamer . runtime . entity . Stream Location Ċ import Ġch . lead rian . samp . k amp . streamer . runtime . entity . Stream able Checkpoint Impl Ċ import Ġch . lead rian . samp . k amp . streamer . runtime . entity . factory . Stream able Checkpoint Factory Ċ import Ġch . lead rian . samp . k amp . streamer . runtime . index . Spatial Index 3 D Ċ import Ġcom . con vers ant media . util . collection . geometry . Rect 3 d Ċ import Ġjavax . annotation . Post Construct Ċ import Ġjavax . inject . Inject Ċ import Ġjavax . inject . Singleton Ċ Ċ @ Singleton Ċ internal Ġclass ĠCheck point Stream er Ċ @ Inject Ċ constructor ( ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġcallback Listener Manager : ĠCallback Listener Manager , ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġcoordinates Based Player Stream er Factory : ĠCoordinates Based Player Stream er Factory , ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġstream able Checkpoint Factory : ĠStream able Checkpoint Factory Ċ ) Ġ: ĠStream er Ġ{ ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġdelegate : ĠCoordinates Based Player Stream er < Stream able Checkpoint Impl , ĠRect 3 d > ĊĊĠĠĠ Ġ@ Post Construct ĊĠĠĠ Ġfun Ġinitialize () Ġ{ ĊĠĠĠĠĠĠĠ Ġdelegate Ġ= Ġcoordinates Based Player Stream er Factory . create ( Spatial Index 3 D (), Ġ 1 ) ĊĠĠĠĠĠĠĠ Ġcallback Listener Manager . register ( delegate ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġcreate Checkpoint ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcoordinates : ĠVector 3 D , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsize : ĠFloat , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpriority : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstream Distance : ĠFloat , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinterior Ids : ĠMutable Set < Int >, ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvirtual World Ids : ĠMutable Set < Int > ĊĠĠĠ Ġ): ĠStream able Checkpoint Impl Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġstream able Checkpoint Ġ= Ġstream able Checkpoint Factory . create ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcoordinates Ġ= Ġcoordinates , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsize Ġ= Ġsize , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpriority Ġ= Ġpriority , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstream Distance Ġ= Ġstream Distance , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinterior Ids Ġ= Ġinterior Ids , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvirtual World Ids Ġ= Ġvirtual World Ids , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcheckpoint Stream er Ġ= Ġthis ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġdelegate . add ( stream able Checkpoint ) ĊĠĠĠĠĠĠĠ Ġreturn Ġstream able Checkpoint ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġon BoundingBox Change ( stream able Checkpoint : ĠStream able Checkpoint Impl ) Ġ{ ĊĠĠĠĠĠĠĠ Ġdelegate . on BoundingBox Change ( stream able Checkpoint ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġstream ( stream Locations : ĠList < Stream Location >) Ġ{ ĊĠĠĠĠĠĠĠ Ġdelegate . stream ( stream Locations ) ĊĠĠĠ Ġ} Ċ Ċ }