Commit Graph

39 Commits

Author SHA1 Message Date
Jim Radford
7baa3ffb04 Applies patch from Tomarus, Mantis #207 corrects Simulator Stats types.
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1715 52acb1d6-8a22-11de-b505-999d5b087335
2008-04-07 16:55:46 +00:00
Jim Radford
582af7c13c Documentation updates to Simulator SimStats
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1676 52acb1d6-8a22-11de-b505-999d5b087335
2008-03-16 01:20:43 +00:00
Jim Radford
6135b0c748 Cleanup patches from DrScofield, cleans up inline code comments and LLUUID Comparison against null. Mantis#138
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1656 52acb1d6-8a22-11de-b505-999d5b087335
2008-03-06 05:57:16 +00:00
John Hurliman
c929b1d948 Applying patch #83 from jradford, renames SafeDictionary to InternalDictionary, removes the now unused ObjectTracker class, and converts FriendsManager to use InternalDictionary
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1589 52acb1d6-8a22-11de-b505-999d5b087335
2008-01-03 21:55:49 +00:00
Jim Radford
1a9099d688 Applied patch in issue 87 courtesy of mjm that fixes a bug in IsParcelMapFull.
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1575 52acb1d6-8a22-11de-b505-999d5b087335
2007-12-30 09:10:31 +00:00
John Hurliman
1993ae0ce7 * Enabled the UDPPacketBuffer object pool, please report any changes in network performance
* Fixed a bug in BuildPacket() that would affect UDPPacketBuffer objects if they are being reused
* Lowered the Dequeue wait time in PacketHandler() to speed up logouts
* Optimized Simulator.ToString()

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1528 52acb1d6-8a22-11de-b505-999d5b087335
2007-12-19 20:53:08 +00:00
John Hurliman
b1b3d30aca Removed all usage of Timeout.Infinite, timers are now initialized when started and disposed when stopped to closer match the MSDN example
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1519 52acb1d6-8a22-11de-b505-999d5b087335
2007-12-06 02:07:26 +00:00
John Hurliman
037b7b0aed Initial check-in of the new CAPS rewrite. Current issues:
* Original CapsEventQueue is still being used until a bug in the new one can be resolved
* New progress callbacks are not being utilized (yet)
* Listener classes (CapsListener and EventQueueListener) are only stubs right now

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1518 52acb1d6-8a22-11de-b505-999d5b087335
2007-12-06 00:58:28 +00:00
John Hurliman
11c97db85c Patch from issue #42 by jradford, cleans up parcel tracking and adds Simulator.IsParcelMapFull(). ParcelManager.RequestAllSimParcels() is non-blocking now, and the callback check is done in ParcelPropertiesHandler to fix a race condition
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1513 52acb1d6-8a22-11de-b505-999d5b087335
2007-12-04 03:59:21 +00:00
jef
2762ce08be Applies patch #40 from jradford.
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1508 52acb1d6-8a22-11de-b505-999d5b087335
2007-11-30 14:55:45 +00:00
John Hurliman
e31883e162 * Committing patch from issue #35 by jradford to add parcel tracking support to ParcelManager. Converted the patch to use SafeDictionary and remove the quirky CurrentParcelID (the new Helpers.VecToParcelLocalID() is a working replacement for it)
* Converted Parcel class to a struct, enforcing valid values for all of the fields in the constructor to avoid accidental null references

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1502 52acb1d6-8a22-11de-b505-999d5b087335
2007-11-29 19:38:32 +00:00
John Hurliman
3013742668 * Increased SIMULATOR_TIMEOUT to 30 seconds
* Converted all timers to System.Threading timers to fix problems running in services and the CF
* UDPBase now uses our own ReaderWriterLock that is more efficient, and CF compatible
* Login uses a hand-created LoginProxy object instead of dynamically building the class with reflection .Emit()
* Replaced ParameterizedThreadStart calls with class-wide variables for CF compat.
* Removed transfer timeout code (irrelevant now that uploads go through CAPS)
* Added several new Helpers methods to wrap desktop and CF conditional code
* Replaced Monitor calls with AutoResetEvent in BlockingQueue
* InventoryNodeDictionary uses generics now
* Removed final lingering piece of XML serialization
* Added CookComputing.XmlRpc.CF.dll for the CF

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1479 52acb1d6-8a22-11de-b505-999d5b087335
2007-11-06 09:26:10 +00:00
fd04ae165e Set sim.PositionIndexYou and PositionIndexPrey to -1 by default. This is the correct default value sent by the simulator.
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1399 52acb1d6-8a22-11de-b505-999d5b087335
2007-09-12 04:13:18 +00:00
5a81c7241a * Added sim.PositionIndexYou and PositionIndexPrey
* Added Client.Self.TrackAgent(preyID)

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1398 52acb1d6-8a22-11de-b505-999d5b087335
2007-09-11 03:00:13 +00:00
78548ecd7e Rolling back previous commit *grumble*
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1397 52acb1d6-8a22-11de-b505-999d5b087335
2007-09-10 23:58:42 +00:00
ac5b21c8ba PROJECT FILE CHANGED!
Added LocationTracker.cs for tracking CoarseLocationUpdate information (mini-map dot positions). This information is accessible from the Simulator class, such as Client.Network.CurrentSim.CoarseLocations.*

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1396 52acb1d6-8a22-11de-b505-999d5b087335
2007-09-10 22:59:59 +00:00
John Hurliman
2bb6a50b08 * Rewrote GiveMoney function and created several offspring Give*Money functions
* Added GroupPowers enum courtesy of Thoys and switched GroupManager over to use it
* Renamed Simulator.SimCaps to Simulator.Caps
* Turned off Keep-Alive and Expect-100: Continue headers on Login
* Added MoneyTransactionType and TransactionFlags

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1391 52acb1d6-8a22-11de-b505-999d5b087335
2007-09-05 01:21:36 +00:00
John Hurliman
975637b2a1 * Switched LLObject to using the Permissions struct
* Added CoordinateFrame class for camera management
* Added NetworkManager.OnSimConnecting that blocks before connecting to a new sim
* CurrentSim no longer goes null in between teleports
* Applied jradford's patch to fix the DeedObject patch
* UDP socket Bind() is used instead of Connect() now and sender verification is done in PacketReceived() to fix an apparent compatibility problem
* Added Helpers.VecCross() for vector cross products
* TextureEntryFace and TextureEntry now implement ICloneable

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1384 52acb1d6-8a22-11de-b505-999d5b087335
2007-09-01 07:52:55 +00:00
John Hurliman
47f8a88162 * Moved all simulator statistic information to a new struct at Simulator.Stats
* Added per-sim avatar and prim tracking through Simulator.Objects, use Settings.ALWAYS_DECODE_OBJECTS = true to enable
* Handle DisconnectSim packet and don't send CloseCircuit packets on sim-triggered disconnects
* Interpolation timer now does angular velocity and linear movement interpolation for all objects in the object tracker(s)

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1363 52acb1d6-8a22-11de-b505-999d5b087335
2007-08-20 09:26:21 +00:00
John Hurliman
50adfa5675 * Added Capabilities.CapsReceivedEvent that signals after the initial CAPS connection is made
* Complete rewrite of event handling for packets and CAPS events
 - No more nested generic collections for events
 - No more for loops for every packet callback
 - CAPS event handlers by event name
 - Asynchronous CAPS event handlers
 - Unregistering of CAPS events
* Added a stub SoundManager
* Increased packet buffer size to 2048 after I got an exception about it being too small
* Continued work on VoiceManager

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1347 52acb1d6-8a22-11de-b505-999d5b087335
2007-08-04 14:31:31 +00:00
John Hurliman
fa9b7830a3 * Added the beginnings of VoiceManager to libsecondlife.Utilities
* Added VoiceTest to test VoiceManager. For now you will have to manually run the voice daemon (shipped with Second Life) each time

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1345 52acb1d6-8a22-11de-b505-999d5b087335
2007-08-03 07:07:49 +00:00
John Hurliman
6de95a27ac * Fixed several CAPS bugs and improved the overall stability and error handling
* Implemented a new logging system in HttpBase and the CAPS classes
* Quieted down the CAPS debug logging a bit
* Added a sanity check in libsecondlife.Utilities.DownloadSimParcels()

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1341 52acb1d6-8a22-11de-b505-999d5b087335
2007-08-02 01:09:53 +00:00
John Hurliman
a8567851d6 * Added HttpBase that serves as the foundation for the new CAPS system
* Rewrote CAPS to use HttpBase, connections now have 30 second timeouts and automatic retrying
* Implemented the static logging function in SecondLife
* Fixed a crash in the GotoLandmark command
* Removed some debug logging from FriendsManager
* Fixed an exception in libsecondlife.Utilities.GetWaterType()

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1340 52acb1d6-8a22-11de-b505-999d5b087335
2007-08-01 13:44:27 +00:00
jef
af13b21fff Updates to xcode. Merged in #201 from CrisOmega. Fixed a small bug with new FriendsManager that caused resent packets. Reset packets now show the type (helpful for debuging dumb resent packets like the one I just fixed).
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1326 52acb1d6-8a22-11de-b505-999d5b087335
2007-07-20 08:05:50 +00:00
John Hurliman
ed1f663217 * Adding a try/catch to GroupRoleMembersHandler as a hacky workaround to some NullReferenceExceptions I've had there
* Removing any of the (now irrelevant) outbound throttling code
* Adding another SendPacket() overload

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1318 52acb1d6-8a22-11de-b505-999d5b087335
2007-07-18 04:02:50 +00:00
Latif Khalifa
f462f44d23 *BREAKING CHANGES* Merging jhurliman branch with the trunk. The old AssetManager, ImageManager, and InventoryManager systems have been phased out and replaced by the new AssetManager and InventoryManager classes. The lowest network layer has been abstracted out and replaced, new networking callbacks added, and many small bugfixes made. AppearanceManager.Wear* commands have been commented out until they are ported to the new inventory system
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1296 52acb1d6-8a22-11de-b505-999d5b087335
2007-07-13 14:49:36 +00:00
John Hurliman
0dc600e83b Merging aditi 1213-1274 in to the trunk, preparing for 1.18 release
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1286 52acb1d6-8a22-11de-b505-999d5b087335
2007-07-11 16:17:06 +00:00
bushing
10eb61f1fc organized the settings a bit
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1209 52acb1d6-8a22-11de-b505-999d5b087335
2007-05-31 02:49:14 +00:00
jef
7f7ea583b2 Decoding of simstats. Can be disable via Settings.ENABLE_SIMSTATS
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1182 52acb1d6-8a22-11de-b505-999d5b087335
2007-05-12 00:10:33 +00:00
jef
3a1a12e604 *yoink*
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1170 52acb1d6-8a22-11de-b505-999d5b087335
2007-05-03 00:16:39 +00:00
baned
71a36d3067 * Added a concept of a SecondUniverse that will be able to contain and manage resources that can be common between SecondLife clients in the same process
* Currently only does it's own PacketInbox processing, instead of depending on a packet processing thread in each client. Should probably be an option to do that or not, assuming anyone uses this or wants it and doesn't just revert it. kthxbai


git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1169 52acb1d6-8a22-11de-b505-999d5b087335
2007-05-02 23:58:32 +00:00
John Hurliman
f44c012f60 * Client.Self.Position now does acceleration/velocity interpolation
* Added LLVector3 * float operator
* Adding Oven.cs to Baker (will be moved in to libsecondlife later) that does the first baby steps of baking
* Added the missing Helpers.GetResourceStream() function
* Changed readonly Settings values to const


git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1110 52acb1d6-8a22-11de-b505-999d5b087335
2007-04-09 08:03:12 +00:00
John Hurliman
81472d88f4 * Incoming packets are put on a queue instead of processing immediately
* Two new classes added, a ManagedThreadPool that is a performance enhanced ThreadPool, and BlockingQueue which is a thread-safe queue that allows one end to block until something is added to the queue
* Added Simulator.ReceivedResends for tracking the number of resent packets received
* Added StatsCommand to TestClient to print out basic networking stats

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1101 52acb1d6-8a22-11de-b505-999d5b087335
2007-04-03 05:47:09 +00:00
John Hurliman
88e7d9397c * Fixed up the Baker example for bushing's experiments
* Removed the ThreadPool checks, it's a lost cause on Mono right now
* Moved ObjectManager RequestAllObjects and AlwaysDecode to the Settings class as ALWAYS_REQUEST_OBJECTS and ALWAYS_DECODE_OBJECTS
* TestClient uses the new Settings variables for object management
* Increased the CAPS timeout, we need to get the initial connection async quickly
* Added a post-build step for openjpegnet MSVC project to copy openjpeg.dll to the bin/ directory

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1090 52acb1d6-8a22-11de-b505-999d5b087335
2007-04-01 09:52:13 +00:00
John Hurliman
003ca29a1d * ThreadPool starvation check is done all the time now, not only under debugging mode
* Added Helpers.EnUsCulture for float parsing, converted all of the Single and Double parsing to be internationally friendly

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1089 52acb1d6-8a22-11de-b505-999d5b087335
2007-03-31 22:49:25 +00:00
John Hurliman
aab41c4235 * ConfigureThreadPool is changed to CheckThreadPool as it now only prints a warning, since mono doesn't implement ThreadPool.SetMaxThreads()
* Thread starvation problems are only printed when they actually happen

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1088 52acb1d6-8a22-11de-b505-999d5b087335
2007-03-31 04:19:50 +00:00
John Hurliman
fbb6754cd1 * Added Bump, Shiny, Fullbright, MediaFlags, and TexMapType properties to prim faces (replaces Flags1 and Flags2)
* TerrainManager will now decode and store patches if Settings.STORE_LAND_PATCHES is true, even if there is no callback
* TestClient now instructs libsl to decode land patches
* Minor performance tweaks

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1078 52acb1d6-8a22-11de-b505-999d5b087335
2007-03-28 22:25:07 +00:00
John Hurliman
75ce7000ca * Added a debug check for monitoring the threadpool size
* Changes to how Utilities.AppearanceManager downloads textures to bake (this code is still a non-functional work in progress)

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1071 52acb1d6-8a22-11de-b505-999d5b087335
2007-03-28 01:31:09 +00:00
John Hurliman
1cb7f4c253 Huge svn cleanup!
* libsecondlife-cs is now libsecondlife
* All applications that are staying have been moved to trunk/
* SLProxy loads Analyst plugin by default if no other plugin is specified on the command line

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1068 52acb1d6-8a22-11de-b505-999d5b087335
2007-03-26 23:12:39 +00:00