Commit Graph

32 Commits

Author SHA1 Message Date
Jim Radford
9987c8f153 Applies patch #178 from lkalif, adds cache for texture baking to improve baking performance, adds OnImageReceiveProgress event to track progress of image downloads. Cache is disabled in Settings by default.
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1693 52acb1d6-8a22-11de-b505-999d5b087335
2008-03-28 00:28:02 +00:00
Jim Radford
d3ba0e9796 Enhances parcel tracking dictionaries:
* Allows automatically requesting ACL's and Dwell (traffic) numbers, stores results in parcel tracking dictionaries. Can be disabled in Client.Settings.

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1660 52acb1d6-8a22-11de-b505-999d5b087335
2008-03-07 18:36:45 +00:00
John Hurliman
4e5c896c70 * InstantMessage() uses the recipient UUID as the SessionID to make IM sessions persistent by default
* Cleaning some cruft out of TestClient, attempting to fix a TestClient IM bug on Mono

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1542 52acb1d6-8a22-11de-b505-999d5b087335
2007-12-21 05:31:13 +00:00
John Hurliman
3db394f974 * Added CloneCommand to TestClient for cloning appearances (no attachments yet)
* avatar_data output directory is libsl_data
* Added a blocking DirectoryManager.PeopleSearch
* Fixed Helpers.GetResourceStream()
* Added avatar_lad.xml to the Resources directory

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1510 52acb1d6-8a22-11de-b505-999d5b087335
2007-11-30 23:19:05 +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
9eecefb290 * Rewrote the LLSD system, changed the namespace name to libsecondlife.StructuredData and created an LLSD instance class
* Removed unused/deprecated login parameters user-agent and author
* More work on prim import/export
* Fixed up GridManager.GetGridRegion()
* Cleaning up AgentManager.LookAt mess
* Attempting to fix AgentManager.StopJump()

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1498 52acb1d6-8a22-11de-b505-999d5b087335
2007-11-21 23:50:05 +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
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
b995eaf53c * Added LLMatrix3 struct
* Cleaned up Types.cs, moved type-specific math from Helpers to the individual types
* Added more functions to CoordinateFrame
* Added Helpers.Swap<>() and Helpers.IsFinite()
* Added agni and aditi constants to Settings

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1386 52acb1d6-8a22-11de-b505-999d5b087335
2007-09-02 04:45:12 +00:00
John Hurliman
d46dd96eee * Added Settings.OBJECT_TRACKING to enable or disable internal object tracking, enabled by default
* Added a Helpers.VecDist() overload that works with LLVector3d
* Added Self.GlobalPosition property
* Removed the dead libslupdater app

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1370 52acb1d6-8a22-11de-b505-999d5b087335
2007-08-23 17:41:57 +00:00
Latif Khalifa
ec5fc8de80 * Renamed AssetType.Object to AssetType.Primitive and AssetObject to AssetPrim to clear up confusion
* Big cleanup of group functions, moving things from MainAvatar to GroupManager, renaming BeginGet* to Request*, and adding new functions and callbacks
* Added an Autopilot function that takes doubles as input (very accurate autopilot)
* Added Settings.CONTINUOUS_AGENT_UPDATES which defaults to true
* Added quotes to the post-build event in VS2005
* Added empty AssetSound and AssetClothing, feel free to fill them in :-)
* Client.Self.*Name are read only properties now

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1357 52acb1d6-8a22-11de-b505-999d5b087335
2007-08-10 20:16:19 +00:00
John Hurliman
12828e64a8 * Removed the embedded resources from libsecondlife.dll and moved them to the external folder avatar_data
* Modified key2name example to not use libsecondlife.Utilities
* Made the Animations LLUUIDs readonly
* Removed AvatarTracker from libsecondlife.Utilities as it will be superceded by the built-in avatar tracker

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1339 52acb1d6-8a22-11de-b505-999d5b087335
2007-07-31 10:29:38 +00:00
John Hurliman
0479529fcd Made Helpers.GetResourceStream intelligent. It will first try to load an embedded resource, then an external file, then return null if both failed (no more exceptions thrown from that function)
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1338 52acb1d6-8a22-11de-b505-999d5b087335
2007-07-31 09:25:24 +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
John Hurliman
645008b03a Login server was pointing at the wrong grid, fixed now
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1303 52acb1d6-8a22-11de-b505-999d5b087335
2007-07-14 19:22:12 +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
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
0101cd5ffb * Added FriendManager.cs
* Added Client.Friends.RequestFriendship(targetID) and .RemoveFriend(targetID)
* Updated all existing 2006 copyrights to 2006-2007

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1207 52acb1d6-8a22-11de-b505-999d5b087335
2007-05-28 17:22: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
baned
6aafd90210 * OnActiveGroupChanged() event added to Self
* SYNC_PACKETCALLBACKS is no longer a const setting, allowing it to be changed by library users in their own code (like me)


git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1156 52acb1d6-8a22-11de-b505-999d5b087335
2007-04-27 23:47:45 +00:00
John Hurliman
07c5ef9373 Defaulting synchronous callback handling off for now until other parts of the library are improved on
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1155 52acb1d6-8a22-11de-b505-999d5b087335
2007-04-27 01:28:23 +00:00
baned
0325f276cc * Login changes to not have async issues on retries/timeouts (Slight interface changes)
* Settings.SYNC_PACKETCALLBACKS. Packet processing is now synchronous by default.
* XML Parsing fix

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1149 52acb1d6-8a22-11de-b505-999d5b087335
2007-04-27 00:21:40 +00:00
John Hurliman
6e7af40682 * Fixed a crash when attempting to teleport with CAPS disabled
* The meaning of Settings.ALWAYS_DECODE_OBJECTS has changed slightly, agent updates are now always decoded regardless of this setting. Clients that are not doing object tracking and have this set to false should see less memory usage
* NameValue is now a struct
* LLObject.NameValues is now an array to help with performance and serialization

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1135 52acb1d6-8a22-11de-b505-999d5b087335
2007-04-20 16:03:24 +00:00
John Hurliman
f5b7f702f3 * Settings.ENABLE_CAPS = false; will disable any connection attempts to CAPS servers
* Added Utilities.ParcelDownloader.GetHeightRange() and Utilities.ParcelDownloader.GetRectangularDeviation() for gathering parcel statistics
* Added more output to ParcelInfoCommand

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1134 52acb1d6-8a22-11de-b505-999d5b087335
2007-04-19 02:59:35 +00:00
John Hurliman
3b6bfbc1ce * Caps initial connection is now asynchronous. This will fix the last remaining occasional lockup on program exit
* Fixed a lockup on exit and NullReferenceException when using ParcelInfoCommand in TestClient
* Basic (but incomplete) support for decoding foliage in CompressedUpdateHandler
* More exception handling in Login.cs
* Housekeeping in MainAvatar.cs
* Increased teleport and caps timeouts
* Added an LLVector3 * LLVector3 operator overload

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1115 52acb1d6-8a22-11de-b505-999d5b087335
2007-04-13 20:02:21 +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
fabdeabf10 * AgentUpdate packets are now complete with the additional enums AgentFlags and AgentState. AgentUpdateFlags has been renamed to ControlFlags
* Fixed a bug where the blocking queue was holding up logouts for up to 15 seconds
* Client.Self is now updated by terse update messages along with full object updates
* Parcel.Update() now takes a bool specifying if we want a confirmation Packet
* An optimization has been added to MainAvatarStatus to prevent duplicate AgentUpdate packets from being sent out. If the avatar is staying idle it will use a lot less bandwidth now
* Default camera distance is now 384 so we see the entire sim

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@1107 52acb1d6-8a22-11de-b505-999d5b087335
2007-04-06 21:02:20 +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
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