C# 클래스 OpenSim.Region.CoreModules.Framework.EntityTransfer.EntityTransferModule

상속: ISharedRegionModule, IEntityTransferModule
파일 보기 프로젝트 열기: N3X15/VoxelSim 1 사용 예제들

보호된 프로퍼티들

프로퍼티 타입 설명
m_Enabled bool
m_aScene OpenSim.Region.Framework.Scenes.Scene
m_agentsInTransit List

공개 메소드들

메소드 설명
AddRegion ( Scene scene ) : void
AgentArrivedAtDestination ( UUID id ) : void
Close ( ) : void
Cross ( SceneObjectGroup grp, System.Vector3 attemptedPosition, bool silent ) : void

Move the given scene object into a new region depending on which region its absolute position has moved into. This method locates the new region handle and offsets the prim position for the new region

Cross ( ScenePresence agent, bool isFlying ) : void
EnableChildAgent ( ScenePresence sp, GridRegion region ) : void

This informs a single neighboring region about agent "avatar". Calls an asynchronous method to do so.. so it doesn't lag the sim.

EnableChildAgents ( ScenePresence sp ) : void

This informs all neighboring regions about agent "avatar". Calls an asynchronous method to do so.. so it doesn't lag the sim.

InformClientToInitiateTeleportToLocationAsync ( ScenePresence agent, uint regionX, uint regionY, System.Vector3 position, Scene initiatingScene ) : void
Initialise ( IConfigSource source ) : void
PostInitialise ( ) : void
RegionLoaded ( Scene scene ) : void
RemoveRegion ( Scene scene ) : void
Teleport ( ScenePresence sp, ulong regionHandle, System.Vector3 position, System.Vector3 lookAt, uint teleportFlags ) : void
TeleportHome ( UUID id, IClientAPI client ) : void

보호된 메소드들

메소드 설명
AgentHasMovedAway ( UUID sessionID, bool logout ) : void
CreateAgent ( ScenePresence sp, GridRegion reg, GridRegion finalDestination, AgentCircuitData agentCircuit, uint teleportFlags, string &reason, bool &logout ) : bool
CrossAgentToNewRegionAsync ( ScenePresence agent, System.Vector3 pos, uint neighbourx, uint neighboury, bool isFlying ) : ScenePresence

This Closes child agents on neighboring regions Calls an asynchronous method to do so.. so it doesn't lag the sim.

CrossAttachmentsIntoNewRegion ( GridRegion destination, ScenePresence sp, bool silent ) : bool
CrossPrimGroupIntoNewRegion ( GridRegion destination, SceneObjectGroup grp, bool silent ) : bool

Move the given scene object into a new region

DoTeleport ( ScenePresence sp, GridRegion reg, GridRegion finalDestination, System.Vector3 position, System.Vector3 lookAt, uint teleportFlags, IEventQueue eq ) : void
GetFinalDestination ( GridRegion region ) : GridRegion
IsOutsideRegion ( Scene s, System.Vector3 pos ) : bool
KillEntity ( Scene scene, uint localID ) : void
NeedsClosing ( uint oldRegionX, uint newRegionX, uint oldRegionY, uint newRegionY, GridRegion reg ) : bool
NeedsNewAgent ( uint oldRegionX, uint newRegionX, uint oldRegionY, uint newRegionY ) : bool
OnNewClient ( IClientAPI client ) : void
RequestNeighbours ( Scene pScene, uint pRegionLocX, uint pRegionLocY ) : List
ResetFromTransit ( UUID id ) : bool
SetCallbackURL ( AgentData agent, RegionInfo region ) : void
SetInTransit ( UUID id ) : void
UpdateAgent ( GridRegion reg, GridRegion finalDestination, AgentData agent ) : bool
WaitForCallback ( UUID id ) : bool

비공개 메소드들

메소드 설명
CrossAgentToNewRegionCompleted ( IAsyncResult iar ) : void
Fail ( ScenePresence sp, GridRegion finalDestination ) : void
InformClientOfNeighbourAsync ( ScenePresence sp, AgentCircuitData a, GridRegion reg, IPEndPoint endPoint, bool newAgent ) : void

Async component for informing client of which neighbours exist

This needs to run asynchronously, as a network timeout may block the thread for a long while

InformClientOfNeighbourCompleted ( IAsyncResult iar ) : void
InformClientToInitateTeleportToLocation ( ScenePresence agent, uint regionX, uint regionY, System.Vector3 position, Scene initiatingScene ) : void
InformClientToInitiateTeleportToLocationCompleted ( IAsyncResult iar ) : void
NeighbourHandles ( List neighbours ) : List
NewNeighbours ( List currentNeighbours, List previousNeighbours ) : List
OldNeighbours ( List currentNeighbours, List previousNeighbours ) : List

메소드 상세

AddRegion() 공개 메소드

public AddRegion ( Scene scene ) : void
scene OpenSim.Region.Framework.Scenes.Scene
리턴 void

AgentArrivedAtDestination() 공개 메소드

public AgentArrivedAtDestination ( UUID id ) : void
id UUID
리턴 void

AgentHasMovedAway() 보호된 메소드

protected AgentHasMovedAway ( UUID sessionID, bool logout ) : void
sessionID UUID
logout bool
리턴 void

Close() 공개 메소드

public Close ( ) : void
리턴 void

CreateAgent() 보호된 메소드

protected CreateAgent ( ScenePresence sp, GridRegion reg, GridRegion finalDestination, AgentCircuitData agentCircuit, uint teleportFlags, string &reason, bool &logout ) : bool
sp OpenSim.Region.Framework.Scenes.ScenePresence
reg OpenSim.Services.Interfaces.GridRegion
finalDestination OpenSim.Services.Interfaces.GridRegion
agentCircuit OpenSim.Framework.AgentCircuitData
teleportFlags uint
reason string
logout bool
리턴 bool

Cross() 공개 메소드

Move the given scene object into a new region depending on which region its absolute position has moved into. This method locates the new region handle and offsets the prim position for the new region
public Cross ( SceneObjectGroup grp, System.Vector3 attemptedPosition, bool silent ) : void
grp OpenSim.Region.Framework.Scenes.SceneObjectGroup the scene object that we're crossing
attemptedPosition System.Vector3 the attempted out of region position of the scene object
silent bool
리턴 void

Cross() 공개 메소드

public Cross ( ScenePresence agent, bool isFlying ) : void
agent OpenSim.Region.Framework.Scenes.ScenePresence
isFlying bool
리턴 void

CrossAgentToNewRegionAsync() 보호된 메소드

This Closes child agents on neighboring regions Calls an asynchronous method to do so.. so it doesn't lag the sim.
protected CrossAgentToNewRegionAsync ( ScenePresence agent, System.Vector3 pos, uint neighbourx, uint neighboury, bool isFlying ) : ScenePresence
agent OpenSim.Region.Framework.Scenes.ScenePresence
pos System.Vector3
neighbourx uint
neighboury uint
isFlying bool
리턴 OpenSim.Region.Framework.Scenes.ScenePresence

CrossAttachmentsIntoNewRegion() 보호된 메소드

protected CrossAttachmentsIntoNewRegion ( GridRegion destination, ScenePresence sp, bool silent ) : bool
destination OpenSim.Services.Interfaces.GridRegion
sp OpenSim.Region.Framework.Scenes.ScenePresence
silent bool
리턴 bool

CrossPrimGroupIntoNewRegion() 보호된 메소드

Move the given scene object into a new region
protected CrossPrimGroupIntoNewRegion ( GridRegion destination, SceneObjectGroup grp, bool silent ) : bool
destination OpenSim.Services.Interfaces.GridRegion
grp OpenSim.Region.Framework.Scenes.SceneObjectGroup Scene Object Group that we're crossing
silent bool
리턴 bool

DoTeleport() 보호된 메소드

protected DoTeleport ( ScenePresence sp, GridRegion reg, GridRegion finalDestination, System.Vector3 position, System.Vector3 lookAt, uint teleportFlags, IEventQueue eq ) : void
sp OpenSim.Region.Framework.Scenes.ScenePresence
reg OpenSim.Services.Interfaces.GridRegion
finalDestination OpenSim.Services.Interfaces.GridRegion
position System.Vector3
lookAt System.Vector3
teleportFlags uint
eq IEventQueue
리턴 void

EnableChildAgent() 공개 메소드

This informs a single neighboring region about agent "avatar". Calls an asynchronous method to do so.. so it doesn't lag the sim.
public EnableChildAgent ( ScenePresence sp, GridRegion region ) : void
sp OpenSim.Region.Framework.Scenes.ScenePresence
region OpenSim.Services.Interfaces.GridRegion
리턴 void

EnableChildAgents() 공개 메소드

This informs all neighboring regions about agent "avatar". Calls an asynchronous method to do so.. so it doesn't lag the sim.
public EnableChildAgents ( ScenePresence sp ) : void
sp OpenSim.Region.Framework.Scenes.ScenePresence
리턴 void

GetFinalDestination() 보호된 메소드

protected GetFinalDestination ( GridRegion region ) : GridRegion
region OpenSim.Services.Interfaces.GridRegion
리턴 OpenSim.Services.Interfaces.GridRegion

InformClientToInitiateTeleportToLocationAsync() 공개 메소드

public InformClientToInitiateTeleportToLocationAsync ( ScenePresence agent, uint regionX, uint regionY, System.Vector3 position, Scene initiatingScene ) : void
agent OpenSim.Region.Framework.Scenes.ScenePresence
regionX uint
regionY uint
position System.Vector3
initiatingScene OpenSim.Region.Framework.Scenes.Scene
리턴 void

Initialise() 공개 메소드

public Initialise ( IConfigSource source ) : void
source IConfigSource
리턴 void

IsOutsideRegion() 보호된 메소드

protected IsOutsideRegion ( Scene s, System.Vector3 pos ) : bool
s OpenSim.Region.Framework.Scenes.Scene
pos System.Vector3
리턴 bool

KillEntity() 보호된 메소드

protected KillEntity ( Scene scene, uint localID ) : void
scene OpenSim.Region.Framework.Scenes.Scene
localID uint
리턴 void

NeedsClosing() 보호된 메소드

protected NeedsClosing ( uint oldRegionX, uint newRegionX, uint oldRegionY, uint newRegionY, GridRegion reg ) : bool
oldRegionX uint
newRegionX uint
oldRegionY uint
newRegionY uint
reg OpenSim.Services.Interfaces.GridRegion
리턴 bool

NeedsNewAgent() 보호된 메소드

protected NeedsNewAgent ( uint oldRegionX, uint newRegionX, uint oldRegionY, uint newRegionY ) : bool
oldRegionX uint
newRegionX uint
oldRegionY uint
newRegionY uint
리턴 bool

OnNewClient() 보호된 메소드

protected OnNewClient ( IClientAPI client ) : void
client IClientAPI
리턴 void

PostInitialise() 공개 메소드

public PostInitialise ( ) : void
리턴 void

RegionLoaded() 공개 메소드

public RegionLoaded ( Scene scene ) : void
scene OpenSim.Region.Framework.Scenes.Scene
리턴 void

RemoveRegion() 공개 메소드

public RemoveRegion ( Scene scene ) : void
scene OpenSim.Region.Framework.Scenes.Scene
리턴 void

RequestNeighbours() 보호된 메소드

protected RequestNeighbours ( Scene pScene, uint pRegionLocX, uint pRegionLocY ) : List
pScene OpenSim.Region.Framework.Scenes.Scene
pRegionLocX uint
pRegionLocY uint
리턴 List

ResetFromTransit() 보호된 메소드

protected ResetFromTransit ( UUID id ) : bool
id UUID
리턴 bool

SetCallbackURL() 보호된 메소드

protected SetCallbackURL ( AgentData agent, RegionInfo region ) : void
agent OpenSim.Framework.AgentData
region OpenSim.Framework.RegionInfo
리턴 void

SetInTransit() 보호된 메소드

protected SetInTransit ( UUID id ) : void
id UUID
리턴 void

Teleport() 공개 메소드

public Teleport ( ScenePresence sp, ulong regionHandle, System.Vector3 position, System.Vector3 lookAt, uint teleportFlags ) : void
sp OpenSim.Region.Framework.Scenes.ScenePresence
regionHandle ulong
position System.Vector3
lookAt System.Vector3
teleportFlags uint
리턴 void

TeleportHome() 공개 메소드

public TeleportHome ( UUID id, IClientAPI client ) : void
id UUID
client IClientAPI
리턴 void

UpdateAgent() 보호된 메소드

protected UpdateAgent ( GridRegion reg, GridRegion finalDestination, AgentData agent ) : bool
reg OpenSim.Services.Interfaces.GridRegion
finalDestination OpenSim.Services.Interfaces.GridRegion
agent OpenSim.Framework.AgentData
리턴 bool

WaitForCallback() 보호된 메소드

protected WaitForCallback ( UUID id ) : bool
id UUID
리턴 bool

프로퍼티 상세

m_Enabled 보호되어 있는 프로퍼티

protected bool m_Enabled
리턴 bool

m_aScene 보호되어 있는 프로퍼티

protected Scene,OpenSim.Region.Framework.Scenes m_aScene
리턴 OpenSim.Region.Framework.Scenes.Scene

m_agentsInTransit 보호되어 있는 프로퍼티

protected List m_agentsInTransit
리턴 List