aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes/SceneGraph.cs
diff options
context:
space:
mode:
authorMelanie Thielker2010-06-26 06:17:09 +0200
committerMelanie Thielker2010-06-26 06:17:09 +0200
commit06fd49bda933194291a7c351c8382dd7036bb30e (patch)
tree18e45591993fc03020f31f404352270fb06a89f4 /OpenSim/Region/Framework/Scenes/SceneGraph.cs
parentFix loading of attachments on login (diff)
parentAdd new event: OnChangedBackup (diff)
downloadopensim-SC_OLD-06fd49bda933194291a7c351c8382dd7036bb30e.zip
opensim-SC_OLD-06fd49bda933194291a7c351c8382dd7036bb30e.tar.gz
opensim-SC_OLD-06fd49bda933194291a7c351c8382dd7036bb30e.tar.bz2
opensim-SC_OLD-06fd49bda933194291a7c351c8382dd7036bb30e.tar.xz
Merge branch 'careminster-presence-refactor' of ssh://3dhosting.de/var/git/careminster into careminster-presence-refactor
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/SceneGraph.cs')
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneGraph.cs37
1 files changed, 37 insertions, 0 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneGraph.cs b/OpenSim/Region/Framework/Scenes/SceneGraph.cs
index 06bc5cd..81ef54f 100644
--- a/OpenSim/Region/Framework/Scenes/SceneGraph.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneGraph.cs
@@ -43,6 +43,12 @@ namespace OpenSim.Region.Framework.Scenes
43 43
44 public delegate void ObjectDuplicateDelegate(EntityBase original, EntityBase clone); 44 public delegate void ObjectDuplicateDelegate(EntityBase original, EntityBase clone);
45 45
46 public delegate void AttachToBackupDelegate(SceneObjectGroup sog);
47
48 public delegate void DetachFromBackupDelegate(SceneObjectGroup sog);
49
50 public delegate void ChangedBackupDelegate(SceneObjectGroup sog);
51
46 public delegate void ObjectCreateDelegate(EntityBase obj); 52 public delegate void ObjectCreateDelegate(EntityBase obj);
47 53
48 public delegate void ObjectDeleteDelegate(EntityBase obj); 54 public delegate void ObjectDeleteDelegate(EntityBase obj);
@@ -61,6 +67,9 @@ namespace OpenSim.Region.Framework.Scenes
61 private PhysicsCrash handlerPhysicsCrash = null; 67 private PhysicsCrash handlerPhysicsCrash = null;
62 68
63 public event ObjectDuplicateDelegate OnObjectDuplicate; 69 public event ObjectDuplicateDelegate OnObjectDuplicate;
70 public event AttachToBackupDelegate OnAttachToBackup;
71 public event DetachFromBackupDelegate OnDetachFromBackup;
72 public event ChangedBackupDelegate OnChangeBackup;
64 public event ObjectCreateDelegate OnObjectCreate; 73 public event ObjectCreateDelegate OnObjectCreate;
65 public event ObjectDeleteDelegate OnObjectRemove; 74 public event ObjectDeleteDelegate OnObjectRemove;
66 75
@@ -388,10 +397,14 @@ namespace OpenSim.Region.Framework.Scenes
388 m_numPrim += sceneObject.Children.Count; 397 m_numPrim += sceneObject.Children.Count;
389 398
390 if (attachToBackup) 399 if (attachToBackup)
400 {
391 sceneObject.AttachToBackup(); 401 sceneObject.AttachToBackup();
402 }
392 403
393 if (OnObjectCreate != null) 404 if (OnObjectCreate != null)
405 {
394 OnObjectCreate(sceneObject); 406 OnObjectCreate(sceneObject);
407 }
395 408
396 lock (m_dictionary_lock) 409 lock (m_dictionary_lock)
397 { 410 {
@@ -458,6 +471,30 @@ namespace OpenSim.Region.Framework.Scenes
458 } 471 }
459 } 472 }
460 473
474 public void FireAttachToBackup(SceneObjectGroup obj)
475 {
476 if (OnAttachToBackup != null)
477 {
478 OnAttachToBackup(obj);
479 }
480 }
481
482 public void FireDetachFromBackup(SceneObjectGroup obj)
483 {
484 if (OnDetachFromBackup != null)
485 {
486 OnDetachFromBackup(obj);
487 }
488 }
489
490 public void FireChangeBackup(SceneObjectGroup obj)
491 {
492 if (OnChangeBackup != null)
493 {
494 OnChangeBackup(obj);
495 }
496 }
497
461 /// <summary> 498 /// <summary>
462 /// Process all pending updates 499 /// Process all pending updates
463 /// </summary> 500 /// </summary>