aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs (follow)
Commit message (Collapse)AuthorAgeFilesLines
* This changeset is the step 1 of 2 in refactoringDr Scofield2009-02-061-3012/+0
| | | | | | | | | | | | | | | | | | | | OpenSim.Region.Environment into a "framework" part and a modules only part. This first changeset refactors OpenSim.Region.Environment.Scenes, OpenSim.Region.Environment.Interfaces, and OpenSim.Region.Interfaces into OpenSim.Region.Framework.{Interfaces,Scenes} leaving only region modules in OpenSim.Region.Environment. The next step will be to move region modules up from OpenSim.Region.Environment.Modules to OpenSim.Region.CoreModules and then sort out which modules are really core modules and which should move out to forge. I've been very careful to NOT BREAK anything. i hope i've succeeded. as this is the work of a whole week i hope i managed to keep track with the applied patches of the last week --- could any of you that did check in stuff have a look at whether it survived? thx!
* Added a ForceSceneObjectBackup method to Scene, which as it says forces a ↵MW2009-02-041-2/+2
| | | | | | | | | | database backup/update on the SceneObjectGroup. This is now called at the beginning of DeRezObject, so we know the database is upto date before we attempt to delete a object. Fix Mantis #1004 Which happened because Database backups don't happen if a object is still selected, so when you select a part in a link-set and then unlink it and then delete it, all without unselecting the prim at all. The unlink changes never get updated to the database. So then when the call to delete the prim from the database happens, which is called with the SceneObjectId. That SceneObjectId is never found, as the database still has that prim as part of another link set. It is possible that these changes might have to be reverted and for us to find a different method of fixing the problem. If the performance overhead is too high or it causes any other problems.
* * Lock the parts for the old group while we're clearing it as well - not ↵Justin Clarke Casey2009-02-031-2/+6
| | | | | | | | much point doing one without the other * Shouldn't result in any deadlocks as I don't think there are any locks in the calling code
* * Mark the old group after linking as deletedJustin Clarke Casey2009-02-031-1/+2
| | | | | | * Add unit test assertions to check this
* * Now clearing parts list in the old group after a link has occurredJustin Clarke Casey2009-02-031-7/+3
| | | | | | * Adjusted existing link tests to reflect this and added some new assertions
* * Lock parts while they're being duplicated to prevent possible race ↵Justin Clarke Casey2009-02-031-1/+7
| | | | | | | | conditions with other parts changers * This shouldn't provoke any deadlocks since the callers aren't taking any other locks beforehand
* * minor: remove some pointless assignments in SOG.Copy() that had already ↵Justin Clarke Casey2009-02-031-14/+2
| | | | been done by MemberwiseClone()
* * Minor refactoring and comments updateslbsa712009-02-021-1/+2
| | | | | * Ignored some gens
* Added a new method SendGroupRootUpdate to start addressing mantis #3019. ll ↵diva2009-01-301-0/+14
| | | | functions have not been changed.
* * minor: just a few formatting changes and log quieteningJustin Clarke Casey2009-01-291-1/+5
|
* * minor: remove serialization and deserializationg sog log messages for nowJustin Clarke Casey2009-01-231-4/+4
|
* Use only one (static) (de-)serializer for (de-)serializing SOPs.Homer Horwitz2009-01-021-3/+22
| | | | | | | | That improves performance drastically, at least for Mono, as the (de-)serializers can then be optimized (and won't use reflection anymore). On my system, before this change de-/serialization took ~9s/9s, whereas after the change it takes ~.5/.2s.
* Thanks Gerhard for a patch that implements part 3 of VolumeDetection / ↵Dahlia Trimble2008-12-221-4/+4
| | | | persistance
* * Fixes edit linked parts rotating the root prim in a linkset. One more ↵Teravus Ovares2008-12-221-1/+1
| | | | bug to go.. and that's editing multiple prim in a linkset at the same time. Don't try that now, as it'll bust the linkset.
* * Fixes linking multiple linksets together. They no longer explodeTeravus Ovares2008-12-211-10/+21
| | | | | * Not out of the weeds yet. Rotating the root part with 'edit linked parts' still borks all child part rotations and rotating a selection of child parts with 'edit linked parts' still borks the position/rotation of the child parts selected
* Mantis#2796. Thank you kindly, Gerhard for a patch that addresses:Charles Krinke2008-12-201-5/+29
| | | | | | | | | | | | | | On a call of llVolumeDetect(1) (or any other number !=0) volume detection is enabled. Together with VD, the phantom flag is set to the GUI. On a call of llVolumeDetect(0), vd detection is switched of again, also the phantom state is removed. On a call to llSetState(STATE_PHANTOM, false) while VD is active, also VD is switched off. The same is true for unchecking the phantom flag via GUI. This allows to take back VD without the need to script just by removing the phantom flag. Things missing in this patch: persistance of the volume-detection flag. This needs more discussion and will be included in another patch soon.
* * Implement 'Save Object Back to My Inventory'. On the Linden client this ↵Justin Clarke Casey2008-12-171-2/+11
| | | | | | | | | is in the Tools menu available when editing an object * This facility allows you to save changes to an object that you've rezzed into a region back into their original inventory item without having to take a copy of the rezzed object.
* * Implements the torque/Rotational Impulse methods in the PhysicsAPI and the ↵Teravus Ovares2008-12-141-0/+58
| | | | | | | ODEPlugin and pipes them to their respective LSL method. * NBody will need to be updated, this is an API change. Torque property and AddAngularForce
* A try to better attachment crossing.Melanie Thielker2008-11-291-3/+5
|
* * refactor: Replace derez destiation magic numbers with an enumerationJustin Clarke Casey2008-11-281-2/+2
|
* Committing the LCO database layer. Native MySQL, no ADO. New reconnectMelanie Thielker2008-11-261-4/+16
| | | | | | | | mechanism to prevent prim loss. Preserve link order on sim restart and drag copy. Fix drag-copied prims' inventories. Fix persistence of child prim inventories.
* Try to keep autoreturn from IM spamming users if the prims take a bitMelanie Thielker2008-11-231-0/+1
| | | | | | longer to be deleted
* Refactor: Scene.ExternalChecks -> Scene.Permissions. Also make allMelanie Thielker2008-11-211-3/+3
| | | | | | the internals of the permissions module adapter sane
* * refactor: Rip out SOP inventory from the partial into a separate classJustin Clarke Casey2008-11-211-3/+3
| | | | | | | | * SceneObjectPartInventory.cs isn't a particularly good name but it's probably not got a long life * A proper inventory interface to follow * Parallel changes for other inventory partial classes to follow at a later date
* Update svn properties, minor formatting cleanup.Jeff Ames2008-11-211-4/+3
|
* Fully implement object return from the parcel dialogMelanie Thielker2008-11-211-1/+1
|
* From: Christopher Yeoh <cyeoh@au1.ibm.com>Sean Dague2008-11-201-4/+6
| | | | | | | | | | | | | | | | | Attached is a patch which fixes mantis bug 2645 where scripts in child prims freeze after being unlinked from the root prim. This got introduced some time after the 0.6 freeze. Have checked test suites pass even after nant clean ;-) http://opensimulator.org/mantis/bug_update_page.php?bug_id=2645 Also removes a redundant ResetIDs call Regards, Chris
* Prevent a nullref when building new prims while others watchMelanie Thielker2008-11-181-0/+2
|
* Set group on newly rezzed objects to the rezzer's (or rezzing object's)Melanie Thielker2008-11-171-0/+1
| | | | | | group
* * Make sure that deleted objects do not send further object updates to the ↵Justin Clarke Casey2008-11-171-0/+6
| | | | client
* * Eliminate SOG.FakeDeleteGroup() since it is now identical with ↵Justin Clarke Casey2008-11-171-24/+0
| | | | | | | | DeleteGroup() (except that is didn't lock the parts, which was a potential race condition) * Removed fake delete code from LSL_Api.SetFlexi - this code was never activiated anyway and didn't appear to make much sense on the surface
* * Stop nulling SOG.m_rootPart and parts on object deletionJustin Clarke Casey2008-11-171-10/+6
| | | | | | | | | | * This renders RootPart == null checks useless - the replacement is to check SOG.IsDeleted. However, in many cases this will not be necessary since updates to deleted parts will not be sent to the client * This should remove any remaining race conditions where an object is deleted while another thread is yet to obtain the root part to perform some operation * Doing this is probably a necessary prerequisite to moving to a model without a separate SOG and SOP * Unfortunately it's not possible to eliminate all RootPart == null checks since in some contexts it is currently used to check whether an object was created successfully
* * Abstracted some methods from SceneObjectGroup to allow them to be ↵Adam Frisby2008-11-161-2/+13
| | | | overridden more easily. Specifically object creation from XML.
* Introduces the message transfer module. It splits the transfer mechanics offMelanie Thielker2008-11-161-0/+3
| | | | | | | | the IM module and makes it into a module of it's own, which can be used by all other modules. Removes some ugly hacks. Refer to the IM module to see how it's used. Also fixes the persistence issue (Mantis #2598)
* Mantis #2621: Thanks idb, for a patch that will persist regularily changed ↵Homer Horwitz2008-11-151-18/+53
| | | | | | | | | | | objects better. Objects will be persisted now MinimumTimeBeforePersistenceConsidered seconds after the last change, but latest MaximumTimeBeforePersistenceConsidered after the first change (both are configurable in OpenSim.ini.example and are set to 60 and 600 as default).
* Detach dropped attachments from the scene presence so they don't get cleanedMelanie Thielker2008-11-141-0/+5
| | | | | | on logout
* * refactor: as per a recent opensim-dev thread, rename InnerScene to ↵Justin Clarke Casey2008-11-121-3/+3
| | | | SceneGraph to make it more descriptive of its intended function
* * refactor: clean up SOG xml2 reloading to reuse more codeJustin Clarke Casey2008-11-101-11/+4
|
* * refactor: Make xml (orig format) loading method reuse existing set root ↵Justin Clarke Casey2008-11-101-9/+15
| | | | | | | | part method * miscellaneous doc/log message changes
* * minor: remove useless exception catchJustin Clarke Casey2008-11-101-9/+1
|
* * refactor: Expose SOG.SetRootPart for outsiders to use rather than setting ↵Justin Clarke Casey2008-11-101-3/+5
| | | | | | | | RootPart and adding the part separately * Make RootPart read only
* * Refactor the callers of SOG.SetPartAsRoot() to use common codeJustin Clarke Casey2008-11-101-31/+18
|
* * Extend basic scene test to retrieve the object from the scene and match uuidsJustin Clarke Casey2008-11-101-3/+6
| | | | | | | * Decouple sog and sop by removing the need to pass the sog to the sop when it is created - most of the code was doing this operation (and hence duplicating it) anyway * Remove unused constructors
* Keep dropped prims from being temp-on-rez and getting cleaned upMelanie Thielker2008-11-101-0/+1
|
* Stop attachments from causing an update to be sent on every frame in whichMelanie Thielker2008-11-101-2/+5
| | | | | | an avatar moves.
* Remove empty OSUUID.cs file. Add copyright headers. Minor formatting cleanup.Jeff Ames2008-11-081-1/+1
|
* * Apply http://opensimulator.org/mantis/view.php?id=2582Justin Clarke Casey2008-11-071-27/+16
| | | | | | | * Send prim flags as booleans from LLClientView rather than in the native LL array * Thanks idb
* * Fix bug in r7162 where avatars could not moveJustin Clarke Casey2008-11-071-5/+5
| | | | | | | * Was caused by the lack of a local id. Local ids are now given from the same sequence as prims, rather than a separate one * I don't believe this will cause any problems, but please revert to a separate sequence if it does
* * Rename PrimIDAllocate() to more effectively convey what it does, and put ↵Justin Clarke Casey2008-11-071-5/+6
| | | | the verb at the front
* * Stop requiring local ids in the SOG constructors.Justin Clarke Casey2008-11-071-5/+11
| | | | | | * These are assigned when the object is attached to the scene