aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs (unfollow)
Commit message (Collapse)AuthorFilesLines
2011-04-14simplify coalesced object tests by using existing scene object set up utilsJustin Clark-Casey (justincc)1-7/+14
this change makes it possible to set an absolute position on a group before it is put into a scene.
2011-04-13First pass at moving object property requests into a queue similarMic Bowman1-4/+6
to the entity update queue. The number of property packets can become significant when selecting/deselecting large numbers of objects. This is experimental code.
2011-04-12First pass at moving object property requests into a queue similarMic Bowman1-4/+6
to the entity update queue. The number of property packets can become significant when selecting/deselecting large numbers of objects. This is experimental code.
2011-04-12First pass at moving object property requests into a queue similarMic Bowman1-4/+6
to the entity update queue. The number of property packets can become significant when selecting/deselecting large numbers of objects. This is experimental code.
2011-04-06Signal prim count taint if the AbsolutePosition of a scene object changes.Justin Clark-Casey (justincc)1-0/+2
This updates prim counts correctly if an object is moved by something other than an avatar (e.g. scripts, region modules) Create TestMoveOwnerObject() regression test for this case.
2011-04-05Change some text to make the autoreturn mechanism more obvious, and align ↵Justin Clark-Casey (justincc)1-2/+4
with the fact that it's one word rather than two.
2010-12-03Only force prim persistence before delete if the prim is the result of an ↵Justin Clark-Casey (justincc)1-2/+13
unpersisted delink This considerably improves delete performance for objects with large linksets
2010-11-22Let CHANGED_SCALE also trigger when editing prims and linksets with the ↵Marck1-0/+2
viewer's edit tools. This event used to trigger only when the scale was changed with a script.
2010-11-16Change the way attachments are persisted. Editing a worn attachment will nowMelanie1-2/+4
save properly, as will the results of a resizer script working. Attachment positions are no longer saved on each move, but instead are saved once on logout. Attachment script states are saved as part of the attachment now when detaching.
2010-10-07Fix autoreturn to not return zero objectsMelanie1-6/+2
2010-10-06Plumb the path for multiple object deletesMelanie1-2/+6
2010-09-25Add UUID to physics prim name parameter so that diagnostic messages can be ↵Justin Clark-Casey (justincc)1-1/+1
made more useful. If a separate UUID parameter is better for the future then this can be added later on.
2010-09-21If the uuid of a SceneObjectGroup (RootPart) is changed before adding to the ↵Justin Clark-Casey (justincc)1-2/+6
scene, remove the old uuid reference from m_parts as well as adding the new one. The separate remove and set operations is SOG.set_UUID() are both locked under m_parts.SyncRoot since they are logically atomic (though this isn't such an issue if the SOG isn't part of a scene) Added unit test for this behaviour. Also changed the second m_parts.AddOrReplace() to m_parts.Add(). As the old reference is now removed we never end up replacing an identical uuid. And if we replace a uuid that's already there (from a child part) then this is an error.
2010-09-16Fixed a regression in SOG.Copy()John Hurliman1-1/+1
2010-09-16Changed SceneObjectGroup to store parts with the fast and thread-safe ↵John Hurliman1-818/+591
MapAndArray collection
2010-09-16Removing debugroot1-1/+0
2010-09-16JustinCC is evil. f7b28dd3 broke script persistence. This fixes it.root1-0/+1
2010-09-15rename SceneObjectGroup.DeleteGroup() to DeleteGroupFromScene() to improve ↵Justin Clark-Casey (justincc)1-1/+1
code readability
2010-09-15Instead of locking SOG.Children when a group is being removed from the ↵Justin Clark-Casey (justincc)1-15/+17
scene, iterate over an unlocked list instead Previously, deadlock was possible because deleting a group took a SOG.Children lock then an m_entityUpdates.SyncRoot lock in LLClientView At the same time, a thread starting from LLClientView.ProcessEntityUpdates() could take an m_entityUpdates.SyncRoot lock then later attempt to take a SOG.Children lock in PermissionsModule.GenerateClientFlags() and later on Taking a children list in SOG appears to be a better solution than changing PermissionsModule to not relook up the prim. Going the permission modules root would require that all downstream modules not take a SOG.Children lock either
2010-09-14Comment out SOG storing debug log messageJustin Clark-Casey (justincc)1-3/+3
This can get very spammy with regularly changing objects. Please uncomment if required.
2010-09-12* Added ISimulationDataService and IEstateDataServiceJohn Hurliman1-1/+1
* Removed StorageManager * CONFIG CHANGE: There are no more database settings in OpenSim.ini. Check the config-include configuration files for region store and estate store database settings
2010-09-12Formatting cleanup.Jeff Ames1-9/+9
2010-09-11Fixed the naming mess around data connectors for simulation dataJohn Hurliman1-1/+1
2010-09-10Second pass at cleaning up thread safety in EntityManager and SceneGraphJohn Hurliman1-9/+2
2010-09-07Fix deletion persistence when freshly delinked prims are removedJustin Clark-Casey (justincc)1-17/+25
Previously, Scene.Inventory.DeRezObjects() forced the persistence of prims before deletion. This is necessary so that freshly delinked prims can be deleted (otherwise they remain as parts of their old group and reappear on server restart). However, DeRezObjects() deleted to user inventory, which is not required by llDie() or direct region module unlink and deletion. Therefore, forced persistence has been pushed down into Scene.UnlinkSceneObject() to be more general, this is still on the DeRezObjects() path. Uncommented TestDelinkPersistence() since this now passes. Tests required considerable elaboration of MockRegionDataPlugin to reflect underlying storing of parts.
2010-09-07Fix deletion persistence when freshly delinked prims are removedJustin Clark-Casey (justincc)1-17/+25
Previously, Scene.Inventory.DeRezObjects() forced the persistence of prims before deletion. This is necessary so that freshly delinked prims can be deleted (otherwise they remain as parts of their old group and reappear on server restart). However, DeRezObjects() deleted to user inventory, which is required by llDie() or direct region module unlink and deletion. Therefore, forced persistence has been pushed down into Scene.UnlinkSceneObject() to be more general, this is still on the DeRezObjects() path. Uncommented TestDelinkPersistence() since this now passes. Tests required considerable elaboration of MockRegionDataPlugin to reflect underlying storing of parts.
2010-09-06Add test to check persistence of newly added pre-linked objectsJustin Clark-Casey (justincc)1-3/+2
Added a MockRegionDataPlugin to do in-memory persistence for tests since adding this to OpenSim.Data.Null.NullDataStore doesn't seem appropriate NullDataStore can do nothing because OpenSim only ever retrieve region objects from the database on startup. Adding an in-memory store here would be unecessary overhead.
2010-09-01refactor: move SOG.AttachToAgent() into AttachmentsModuleJustin Clark-Casey (justincc)1-71/+0
2010-08-28Improve liveness by operating on list copies of SOG.Children where appropriateJustin Clark-Casey (justincc)1-23/+27
2010-08-26replace m_parts.Count linknum with 0 in CopyRootPart since m_parts.Count is ↵Justin Clark-Casey (justincc)1-1/+1
always 0 (and any other number would cause an error anyway)
2010-08-26Improve consistency of locking for SOG.m_parts in order to avoid race ↵Justin Clark-Casey (justincc)1-52/+79
conditions in linking and unlinking
2010-08-25If setting SOG.UUID, update the SOG.m_parts index as well as the root part UUIDJustin Clark-Casey (justincc)1-1/+10
Being able to change a SOG.UUID is useful for region modules that want to supply their own UUID, before the object is rezzed
2010-08-13refactor: Use SOP.Flags rather than SOP.ObjectFlagsJustin Clark-Casey (justincc)1-3/+3
2010-08-10Removed abstract SetText method from EntityBase to make cleaner API.Mikko Pallari1-1/+1
Signed-off-by: Melanie <melanie@t-data.com>
2010-08-10On shift-copy of an object, set up a new physics actor (as appropriate) for ↵Justin Clark-Casey (justincc)1-19/+19
every copied prim, not just the root This addresses http://opensimulator.org/mantis/view.php?id=4295
2010-08-07minor: Remove overly verbose schedule full update log message for attachmentsJustin Clark-Casey (justincc)1-2/+2
2010-07-28add userExposed parameter to part copy eventJustin Clark-Casey (justincc)1-0/+1
2010-07-26Add EventManager.OnSceneObjectPreSave() for future use. This is triggered ↵Justin Clark-Casey (justincc)1-0/+1
immediately before a copy of the group is persisted to storage
2010-07-26Add EventManager.OnSceneObjectPreSave() for future use. This is triggered ↵Justin Clark-Casey (justincc)1-0/+1
immediately before a copy of the group is persisted to storage
2010-07-20Allow Megaregions to start properly after an unclean shutdownMelanie1-1/+1
2010-06-28Remove AgentID and GroupOD from the signature of SOG.Copy(). They were neverMelanie Thielker1-3/+3
used, but made for a very mispleading read of the code in the callers.
2010-06-28Fix Copy on Ray, Drag Copy and other little things. Removed the wrong andMelanie Thielker1-16/+2
nonworking ownership assignment in SOG, which messed things up before. No longer trust the client to send the ID of the person something is copied as, since it allows to run a script with someone else's permissions. Properly adjust inventory ownership and perms.
2010-06-09Bug fix on attachments: attach->drop->attach works now.Diva Canto1-0/+1
2010-06-08Reduce number of full updates sent on region crossing for attachments/huds ↵Justin Clark-Casey (justincc)1-1/+2
to 1 from 3 This is one step towards reducing hud glitches on region crossing, since the viewer fails to display prims if it receives child full updates before the root prim full update This commit also introduces a mechanism in LLClientView to stop child attachment updates ever going out before the root one This is a very temporary mechanism and will be commented out when the next step of the fix (to give root prims higher udpate priority) is committed This code is a foreport from the equivalent changes in 0.6.9-post-fixes
2010-06-01Fix prim returns I broke earlierMelanie Thielker1-1/+1
2010-06-01Split GetAxisAlignedBoundingBox into two methods to allow calculation ofMelanie Thielker1-3/+20
combined bounding boxes and offsets
2010-05-31Fix create selection getting overwritten by multiple updates for the same prim.Melanie Thielker1-1/+1
2010-05-21* Moving all of the prioritization/reprioritization code into a new file ↵John Hurliman1-100/+1
Prioritizer.cs * Simplified the interest management code to make it easier to add new policies. Prioritization and reprioritization share code paths now * Improved the distance and front back policies to always give your avatar the highest priority
2010-03-17Inconsistent locking of ScenePresence array in SceneGraph. Fixed by ↵Dan Lake1-7/+5
eliminating option to return the actual list. Callers can now either request a copy of the array as a new List or ask the SceneGraph to call a delegate function on every ScenePresence. Iteration and locking of the ScenePresences now takes place only within the SceneGraph class. This patch also applies a fix to Combat/CombatModule.cs which had unlocked iteration of the ScenePresences and inconsistent try/catch around the use of those ScenePresences.
2010-03-10Formatting cleanup. Add copyright notices.Jeff Ames1-3/+3