diff --git a/OpenSim/Data/Migration.cs b/OpenSim/Data/Migration.cs
index 2895a71581..d60647015f 100644
--- a/OpenSim/Data/Migration.cs
+++ b/OpenSim/Data/Migration.cs
@@ -138,12 +138,12 @@ namespace OpenSim.Data
///
/// Array of strings, one-per-batch (often just one)
protected virtual void ExecuteScript(DbConnection conn, string[] script)
- {
+ {
using (DbCommand cmd = conn.CreateCommand())
{
cmd.CommandTimeout = 0;
foreach (string sql in script)
- {
+ {
cmd.CommandText = sql;
try
{
diff --git a/OpenSim/Framework/AgentCircuitData.cs b/OpenSim/Framework/AgentCircuitData.cs
index 783a8337a5..4f89d78c0e 100644
--- a/OpenSim/Framework/AgentCircuitData.cs
+++ b/OpenSim/Framework/AgentCircuitData.cs
@@ -108,10 +108,30 @@ namespace OpenSim.Framework
public string ServiceSessionID = string.Empty;
///
- /// Viewer's version string
+ /// The client's IP address, as captured by the login service
+ ///
+ public string IPAddress;
+
+ ///
+ /// Viewer's version string as reported by the viewer at login
///
public string Viewer;
+ ///
+ /// The channel strinf sent by the viewer at login
+ ///
+ public string Channel;
+
+ ///
+ /// The Mac address as reported by the viewer at login
+ ///
+ public string Mac;
+
+ ///
+ /// The id0 as reported by the viewer at login
+ ///
+ public string Id0;
+
///
/// Position the Agent's Avatar starts in the region
///
@@ -179,7 +199,11 @@ namespace OpenSim.Framework
args["service_session_id"] = OSD.FromString(ServiceSessionID);
args["start_pos"] = OSD.FromString(startpos.ToString());
args["appearance_serial"] = OSD.FromInteger(Appearance.Serial);
+ args["client_ip"] = OSD.FromString(IPAddress);
args["viewer"] = OSD.FromString(Viewer);
+ args["channel"] = OSD.FromString(Channel);
+ args["mac"] = OSD.FromString(Mac);
+ args["id0"] = OSD.FromString(Id0);
if (Appearance != null)
{
@@ -279,8 +303,16 @@ namespace OpenSim.Framework
SessionID = args["session_id"].AsUUID();
if (args["service_session_id"] != null)
ServiceSessionID = args["service_session_id"].AsString();
+ if (args["client_ip"] != null)
+ IPAddress = args["client_ip"].AsString();
if (args["viewer"] != null)
Viewer = args["viewer"].AsString();
+ if (args["channel"] != null)
+ Channel = args["channel"].AsString();
+ if (args["mac"] != null)
+ Mac = args["mac"].AsString();
+ if (args["id0"] != null)
+ Id0 = args["id0"].AsString();
if (args["start_pos"] != null)
Vector3.TryParse(args["start_pos"].AsString(), out startpos);
@@ -349,6 +381,9 @@ namespace OpenSim.Framework
public float startposy;
public float startposz;
public string Viewer;
+ public string Channel;
+ public string Mac;
+ public string Id0;
public sAgentCircuitData()
{
diff --git a/OpenSim/Region/ClientStack/LindenUDP/UnackedPacketCollection.cs b/OpenSim/Region/ClientStack/LindenUDP/UnackedPacketCollection.cs
index e43f7cf57a..4cb4aeec02 100644
--- a/OpenSim/Region/ClientStack/LindenUDP/UnackedPacketCollection.cs
+++ b/OpenSim/Region/ClientStack/LindenUDP/UnackedPacketCollection.cs
@@ -1,4 +1,4 @@
-/*
+/*
* Copyright (c) Contributors, http://opensimulator.org/
* See CONTRIBUTORS.TXT for a full list of copyright holders.
*
@@ -139,28 +139,43 @@ namespace OpenSim.Region.ClientStack.LindenUDP
private void ProcessQueues()
{
// Process all the pending adds
- OutgoingPacket pendingAdd;
- while (m_pendingAdds.Dequeue(out pendingAdd))
- m_packets[pendingAdd.SequenceNumber] = pendingAdd;
+ OutgoingPacket pendingAdd;
+ if (m_pendingAdds != null)
+ {
+ while (m_pendingAdds.TryDequeue(out pendingAdd))
+ {
+ if (pendingAdd != null && m_packets != null)
+ {
+ m_packets[pendingAdd.SequenceNumber] = pendingAdd;
+ }
+ }
+ }
+
// Process all the pending removes, including updating statistics and round-trip times
PendingAck pendingRemove;
OutgoingPacket ackedPacket;
- while (m_pendingRemoves.Dequeue(out pendingRemove))
+ if (m_pendingRemoves != null)
{
- if (m_packets.TryGetValue(pendingRemove.SequenceNumber, out ackedPacket))
+ while (m_pendingRemoves.TryDequeue(out pendingRemove))
{
- m_packets.Remove(pendingRemove.SequenceNumber);
-
- // Update stats
- System.Threading.Interlocked.Add(ref ackedPacket.Client.UnackedBytes, -ackedPacket.Buffer.DataLength);
-
- if (!pendingRemove.FromResend)
+ if (m_pendingRemoves != null && m_packets != null)
{
- // Calculate the round-trip time for this packet and its ACK
- int rtt = pendingRemove.RemoveTime - ackedPacket.TickCount;
- if (rtt > 0)
- ackedPacket.Client.UpdateRoundTrip(rtt);
+ if (m_packets.TryGetValue(pendingRemove.SequenceNumber, out ackedPacket))
+ {
+ m_packets.Remove(pendingRemove.SequenceNumber);
+
+ // Update stats
+ System.Threading.Interlocked.Add(ref ackedPacket.Client.UnackedBytes, -ackedPacket.Buffer.DataLength);
+
+ if (!pendingRemove.FromResend)
+ {
+ // Calculate the round-trip time for this packet and its ACK
+ int rtt = pendingRemove.RemoveTime - ackedPacket.TickCount;
+ if (rtt > 0)
+ ackedPacket.Client.UpdateRoundTrip(rtt);
+ }
+ }
}
}
}
diff --git a/OpenSim/Region/CoreModules/Asset/FlotsamAssetCache.cs b/OpenSim/Region/CoreModules/Asset/FlotsamAssetCache.cs
index 9eaa758bd5..6ed48674b2 100644
--- a/OpenSim/Region/CoreModules/Asset/FlotsamAssetCache.cs
+++ b/OpenSim/Region/CoreModules/Asset/FlotsamAssetCache.cs
@@ -252,7 +252,7 @@ namespace Flotsam.RegionModules.AssetCache
}
else
{
- m_MemoryCache.AddOrUpdate(key, asset, DateTime.MaxValue);
+ m_MemoryCache.AddOrUpdate(key, asset, Double.MaxValue);
}
}
}
@@ -863,4 +863,4 @@ namespace Flotsam.RegionModules.AssetCache
#endregion
}
-}
\ No newline at end of file
+}
diff --git a/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs b/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
index 28c50abbca..457e0bbe70 100644
--- a/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
@@ -307,7 +307,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments
///
///
///
- ///
+ ///
protected UUID ShowAttachInUserInventory(
SceneObjectGroup att, IClientAPI remoteClient, UUID itemID, uint AttachmentPt)
{
diff --git a/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs b/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs
index 7a21d5e6b2..b3f0a2516a 100644
--- a/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs
@@ -318,12 +318,12 @@ namespace OpenSim.Region.CoreModules.Avatar.Friends
UserAccount account = m_Scenes[0].UserAccountService.GetUserAccount(client.Scene.RegionInfo.ScopeID, fromAgentID);
- PresenceInfo presence = null;
- PresenceInfo[] presences = PresenceService.GetAgents(new string[] { fid });
- if (presences != null && presences.Length > 0)
- presence = presences[0];
- if (presence != null)
- im.offline = 0;
+ PresenceInfo presence = null;
+ PresenceInfo[] presences = PresenceService.GetAgents(new string[] { fid });
+ if (presences != null && presences.Length > 0)
+ presence = presences[0];
+ if (presence != null)
+ im.offline = 0;
im.fromAgentID = fromAgentID.Guid;
im.fromAgentName = account.FirstName + " " + account.LastName;
diff --git a/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs b/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs
index 828c4e7c01..3791e1df6f 100644
--- a/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs
+++ b/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs
@@ -301,7 +301,11 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
if (currentAgentCircuit != null)
{
agentCircuit.ServiceURLs = currentAgentCircuit.ServiceURLs;
+ agentCircuit.IPAddress = currentAgentCircuit.IPAddress;
agentCircuit.Viewer = currentAgentCircuit.Viewer;
+ agentCircuit.Channel = currentAgentCircuit.Channel;
+ agentCircuit.Mac = currentAgentCircuit.Mac;
+ agentCircuit.Id0 = currentAgentCircuit.Id0;
}
if (NeedsNewAgent(oldRegionX, newRegionX, oldRegionY, newRegionY))
@@ -943,16 +947,16 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
agent.CapsPath = CapsUtil.GetRandomCapsObjectPath();
agent.ChildrenCapSeeds = new Dictionary(sp.Scene.CapsModule.GetChildrenSeeds(sp.UUID));
- m_log.DebugFormat("[XXX] Seeds 1 {0}", agent.ChildrenCapSeeds.Count);
+ //m_log.DebugFormat("[XXX] Seeds 1 {0}", agent.ChildrenCapSeeds.Count);
if (!agent.ChildrenCapSeeds.ContainsKey(sp.Scene.RegionInfo.RegionHandle))
agent.ChildrenCapSeeds.Add(sp.Scene.RegionInfo.RegionHandle, sp.ControllingClient.RequestClientInfo().CapsPath);
- m_log.DebugFormat("[XXX] Seeds 2 {0}", agent.ChildrenCapSeeds.Count);
+ //m_log.DebugFormat("[XXX] Seeds 2 {0}", agent.ChildrenCapSeeds.Count);
sp.AddNeighbourRegion(region.RegionHandle, agent.CapsPath);
- foreach (ulong h in agent.ChildrenCapSeeds.Keys)
- m_log.DebugFormat("[XXX] --> {0}", h);
- m_log.DebugFormat("[XXX] Adding {0}", region.RegionHandle);
+ //foreach (ulong h in agent.ChildrenCapSeeds.Keys)
+ // m_log.DebugFormat("[XXX] --> {0}", h);
+ //m_log.DebugFormat("[XXX] Adding {0}", region.RegionHandle);
agent.ChildrenCapSeeds.Add(region.RegionHandle, agent.CapsPath);
if (sp.Scene.CapsModule != null)
@@ -963,7 +967,11 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
if (currentAgentCircuit != null)
{
agent.ServiceURLs = currentAgentCircuit.ServiceURLs;
+ agent.IPAddress = currentAgentCircuit.IPAddress;
agent.Viewer = currentAgentCircuit.Viewer;
+ agent.Channel = currentAgentCircuit.Channel;
+ agent.Mac = currentAgentCircuit.Mac;
+ agent.Id0 = currentAgentCircuit.Id0;
}
InformClientOfNeighbourDelegate d = InformClientOfNeighbourAsync;
@@ -1052,7 +1060,11 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
if (currentAgentCircuit != null)
{
agent.ServiceURLs = currentAgentCircuit.ServiceURLs;
+ agent.IPAddress = currentAgentCircuit.IPAddress;
agent.Viewer = currentAgentCircuit.Viewer;
+ agent.Channel = currentAgentCircuit.Channel;
+ agent.Mac = currentAgentCircuit.Mac;
+ agent.Id0 = currentAgentCircuit.Id0;
}
if (newRegions.Contains(neighbour.RegionHandle))
diff --git a/OpenSim/Region/CoreModules/LightShare/LightShareModule.cs b/OpenSim/Region/CoreModules/LightShare/LightShareModule.cs
index e6cab1d381..412dbb69c3 100644
--- a/OpenSim/Region/CoreModules/LightShare/LightShareModule.cs
+++ b/OpenSim/Region/CoreModules/LightShare/LightShareModule.cs
@@ -91,6 +91,7 @@ namespace OpenSim.Region.CoreModules.World.LightShare
m_scene.EventManager.OnMakeRootAgent += EventManager_OnMakeRootAgent;
m_scene.EventManager.OnSaveNewWindlightProfile += EventManager_OnSaveNewWindlightProfile;
m_scene.EventManager.OnSendNewWindlightProfileTargeted += EventManager_OnSendNewWindlightProfileTargeted;
+ m_scene.LoadWindlightProfile();
}
InstallCommands();
diff --git a/OpenSim/Region/CoreModules/ServiceConnectorsOut/UserAccounts/UserAccountCache.cs b/OpenSim/Region/CoreModules/ServiceConnectorsOut/UserAccounts/UserAccountCache.cs
index 7c12b8c0ff..e7cfda1bf1 100644
--- a/OpenSim/Region/CoreModules/ServiceConnectorsOut/UserAccounts/UserAccountCache.cs
+++ b/OpenSim/Region/CoreModules/ServiceConnectorsOut/UserAccounts/UserAccountCache.cs
@@ -53,9 +53,9 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.UserAccounts
public void Cache(UUID userID, UserAccount account)
{
// Cache even null accounts
- m_UUIDCache.AddOrUpdate(userID, account, DateTime.Now + TimeSpan.FromSeconds(CACHE_EXPIRATION_SECONDS));
+ m_UUIDCache.AddOrUpdate(userID, account, CACHE_EXPIRATION_SECONDS);
if (account != null)
- m_NameCache.AddOrUpdate(account.Name, account.PrincipalID, DateTime.Now + TimeSpan.FromSeconds(CACHE_EXPIRATION_SECONDS));
+ m_NameCache.AddOrUpdate(account.Name, account.PrincipalID, CACHE_EXPIRATION_SECONDS);
m_log.DebugFormat("[USER CACHE]: cached user {0}", userID);
}
diff --git a/OpenSim/Region/CoreModules/World/Warp3DMap/MapImageModule.cs b/OpenSim/Region/CoreModules/World/Warp3DMap/MapImageModule.cs
index a99b20c91d..49b4364e14 100644
--- a/OpenSim/Region/CoreModules/World/Warp3DMap/MapImageModule.cs
+++ b/OpenSim/Region/CoreModules/World/Warp3DMap/MapImageModule.cs
@@ -352,6 +352,12 @@ namespace OpenSim.Region.CoreModules.World.Warp3DMap
Face face = renderMesh.Faces[i];
string meshName = primID + "-Face-" + i.ToString();
+ // Avoid adding duplicate meshes to the scene
+ if (renderer.Scene.objectData.ContainsKey(meshName))
+ {
+ continue;
+ }
+
warp_Object faceObj = new warp_Object(face.Vertices.Count, face.Indices.Count / 3);
for (int j = 0; j < face.Vertices.Count; j++)
diff --git a/OpenSim/Region/Framework/Scenes/SceneGraph.cs b/OpenSim/Region/Framework/Scenes/SceneGraph.cs
index a79dc988e4..f81c551768 100644
--- a/OpenSim/Region/Framework/Scenes/SceneGraph.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneGraph.cs
@@ -1073,7 +1073,7 @@ namespace OpenSim.Region.Framework.Scenes
catch (Exception e)
{
// Catch it and move on. This includes situations where splist has inconsistent info
- m_log.WarnFormat("[SCENE]: Problem processing action in ForEachSOG: ", e.Message);
+ m_log.WarnFormat("[SCENE]: Problem processing action in ForEachSOG: ", e.ToString());
}
}
}
@@ -1114,7 +1114,6 @@ namespace OpenSim.Region.Framework.Scenes
catch (Exception e)
{
m_log.Info("[BUG] in " + m_parentScene.RegionInfo.RegionName + ": " + e.ToString());
- m_log.Info("[BUG] Stack Trace: " + e.StackTrace);
}
}
}
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
index a8e76e3d6c..8140d42bce 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
@@ -2763,7 +2763,7 @@ namespace OpenSim.Region.Framework.Scenes
UUID = UUID.Random();
LinkNum = linkNum;
LocalId = 0;
- Inventory.ResetInventoryIDs();
+ Inventory.ResetInventoryIDs();
}
///
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
index a4533fa6be..13d99643bf 100644
--- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs
+++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
@@ -1523,7 +1523,7 @@ namespace OpenSim.Region.Framework.Scenes
}
// If the agent update does move the avatar, then calculate the force ready for the velocity update,
- // which occurs later in the main scene loop
+ // which occurs later in the main scene loop
if (update_movementflag || (update_rotation && DCFlagKeyPressed))
{
// m_log.DebugFormat("{0} {1}", update_movementflag, (update_rotation && DCFlagKeyPressed));
diff --git a/OpenSim/Region/Framework/Scenes/Tests/SceneObjectBasicTests.cs b/OpenSim/Region/Framework/Scenes/Tests/SceneObjectBasicTests.cs
index e6ff0c0561..5616a4e9d6 100644
--- a/OpenSim/Region/Framework/Scenes/Tests/SceneObjectBasicTests.cs
+++ b/OpenSim/Region/Framework/Scenes/Tests/SceneObjectBasicTests.cs
@@ -210,7 +210,7 @@ namespace OpenSim.Region.Framework.Scenes.Tests
= new SceneObjectPart(UUID.Zero, PrimitiveBaseShape.Default, Vector3.Zero, Quaternion.Identity, Vector3.Zero)
{ Name = childPartName, UUID = childPartUuid };
- SceneObjectGroup sog = new SceneObjectGroup(rootPart);
+ SceneObjectGroup sog = new SceneObjectGroup(rootPart);
sog.AddPart(linkPart);
Assert.That(sog.UUID, Is.EqualTo(rootPartUuid));
@@ -221,7 +221,7 @@ namespace OpenSim.Region.Framework.Scenes.Tests
sog.UUID = newRootPartUuid;
Assert.That(sog.UUID, Is.EqualTo(newRootPartUuid));
- Assert.That(sog.RootPart.UUID, Is.EqualTo(newRootPartUuid));
+ Assert.That(sog.RootPart.UUID, Is.EqualTo(newRootPartUuid));
Assert.That(sog.Parts.Length, Is.EqualTo(2));
}
}
diff --git a/OpenSim/Region/OptionalModules/World/MoneyModule/SampleMoneyModule.cs b/OpenSim/Region/OptionalModules/World/MoneyModule/SampleMoneyModule.cs
index e42dbf21f6..7e1b5acb7b 100644
--- a/OpenSim/Region/OptionalModules/World/MoneyModule/SampleMoneyModule.cs
+++ b/OpenSim/Region/OptionalModules/World/MoneyModule/SampleMoneyModule.cs
@@ -812,7 +812,7 @@ namespace OpenSim.Region.OptionalModules.World.MoneyModule
// gets the object data. If the data sent by the client doesn't match the object, the viewer probably has an
// old idea of what the object properties are. Viewer developer Hazim informed us that the base module
// didn't check the client sent data against the object do any. Since the base modules are the
- // 'crowning glory' examples of good practice..
+ // 'crowning glory' examples of good practice..
// Validate that the object exists in the scene the user is in
SceneObjectPart part = s.GetSceneObjectPart(localID);
diff --git a/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs b/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs
index c37c9bd131..c91658e946 100644
--- a/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs
+++ b/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs
@@ -188,7 +188,7 @@ namespace OpenSim.Region.Physics.OdePlugin
public OdePrim(String primName, OdeScene parent_scene, Vector3 pos, Vector3 size,
Quaternion rotation, IMesh mesh, PrimitiveBaseShape pbs, bool pisPhysical, CollisionLocker dode)
{
- Name = primName;
+ Name = primName;
m_vehicle = new ODEDynamics();
//gc = GCHandle.Alloc(prim_geom, GCHandleType.Pinned);
ode = dode;
@@ -620,7 +620,7 @@ namespace OpenSim.Region.Physics.OdePlugin
volume *= (1.0f - hollowVolume);
}
}
- break;
+ break;
default:
break;
@@ -658,7 +658,7 @@ namespace OpenSim.Region.Physics.OdePlugin
taperY = _pbs.PathTaperY * 0.01f;
if (taperY < 0.0f)
- taperY = -taperY;
+ taperY = -taperY;
taperY1 = 1.0f - taperY;
}
@@ -1059,7 +1059,7 @@ namespace OpenSim.Region.Physics.OdePlugin
}
foreach (OdePrim prm in childrenPrim)
- {
+ {
prm.m_collisionCategories |= CollisionCategories.Body;
prm.m_collisionFlags |= (CollisionCategories.Land | CollisionCategories.Wind);
diff --git a/OpenSim/Server/Base/ServicesServerBase.cs b/OpenSim/Server/Base/ServicesServerBase.cs
index 18f0f24a47..2652ff2869 100644
--- a/OpenSim/Server/Base/ServicesServerBase.cs
+++ b/OpenSim/Server/Base/ServicesServerBase.cs
@@ -176,7 +176,7 @@ namespace OpenSim.Server.Base
OpenSimAppender consoleAppender = null;
FileAppender fileAppender = null;
- if ( logConfig != null )
+ if (logConfig != null)
{
FileInfo cfg = new FileInfo(logConfig);
XmlConfigurator.Configure(cfg);
diff --git a/OpenSim/Server/Handlers/Hypergrid/AgentHandlers.cs b/OpenSim/Server/Handlers/Hypergrid/AgentHandlers.cs
index c95165398b..31eefb1a6e 100644
--- a/OpenSim/Server/Handlers/Hypergrid/AgentHandlers.cs
+++ b/OpenSim/Server/Handlers/Hypergrid/AgentHandlers.cs
@@ -54,9 +54,10 @@ namespace OpenSim.Server.Handlers.Hypergrid
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
private IGatekeeperService m_GatekeeperService;
- public GatekeeperAgentHandler(IGatekeeperService gatekeeper)
+ public GatekeeperAgentHandler(IGatekeeperService gatekeeper, bool proxy)
{
m_GatekeeperService = gatekeeper;
+ m_Proxy = proxy;
}
protected override bool CreateAgent(GridRegion destination, AgentCircuitData aCircuit, uint teleportFlags, out string reason)
diff --git a/OpenSim/Server/Handlers/Hypergrid/GatekeeperServerConnector.cs b/OpenSim/Server/Handlers/Hypergrid/GatekeeperServerConnector.cs
index dcb27257a0..49de8b1c66 100644
--- a/OpenSim/Server/Handlers/Hypergrid/GatekeeperServerConnector.cs
+++ b/OpenSim/Server/Handlers/Hypergrid/GatekeeperServerConnector.cs
@@ -51,6 +51,8 @@ namespace OpenSim.Server.Handlers.Hypergrid
get { return m_GatekeeperService; }
}
+ bool m_Proxy = false;
+
public GatekeeperServiceInConnector(IConfigSource config, IHttpServer server, ISimulationService simService) :
base(config, server, String.Empty)
{
@@ -65,11 +67,13 @@ namespace OpenSim.Server.Handlers.Hypergrid
if (m_GatekeeperService == null)
throw new Exception("Gatekeeper server connector cannot proceed because of missing service");
+ m_Proxy = gridConfig.GetBoolean("HasProxy", false);
+
HypergridHandlers hghandlers = new HypergridHandlers(m_GatekeeperService);
server.AddXmlRPCHandler("link_region", hghandlers.LinkRegionRequest, false);
server.AddXmlRPCHandler("get_region", hghandlers.GetRegion, false);
- server.AddHTTPHandler("/foreignagent/", new GatekeeperAgentHandler(m_GatekeeperService).Handler);
+ server.AddHTTPHandler("/foreignagent/", new GatekeeperAgentHandler(m_GatekeeperService, m_Proxy).Handler);
}
public GatekeeperServiceInConnector(IConfigSource config, IHttpServer server)
diff --git a/OpenSim/Server/Handlers/Hypergrid/HomeAgentHandlers.cs b/OpenSim/Server/Handlers/Hypergrid/HomeAgentHandlers.cs
index d10d6fc6fe..f64a07973e 100644
--- a/OpenSim/Server/Handlers/Hypergrid/HomeAgentHandlers.cs
+++ b/OpenSim/Server/Handlers/Hypergrid/HomeAgentHandlers.cs
@@ -55,11 +55,13 @@ namespace OpenSim.Server.Handlers.Hypergrid
private IUserAgentService m_UserAgentService;
private string m_LoginServerIP;
+ private bool m_Proxy = false;
- public HomeAgentHandler(IUserAgentService userAgentService, string loginServerIP)
+ public HomeAgentHandler(IUserAgentService userAgentService, string loginServerIP, bool proxy)
{
m_UserAgentService = userAgentService;
m_LoginServerIP = loginServerIP;
+ m_Proxy = proxy;
}
public Hashtable Handler(Hashtable request)
@@ -153,11 +155,11 @@ namespace OpenSim.Server.Handlers.Hypergrid
string ip_str = args["client_ip"].ToString();
try
{
- string callerIP = Util.GetCallerIP(request);
+ string callerIP = GetCallerIP(request);
// Verify if this caller has authority to send the client IP
if (callerIP == m_LoginServerIP)
client_ipaddress = new IPEndPoint(IPAddress.Parse(ip_str), 0);
- else
+ else // leaving this for now, but this warning should be removed
m_log.WarnFormat("[HOME AGENT HANDLER]: Unauthorized machine {0} tried to set client ip to {1}", callerIP, ip_str);
}
catch
@@ -198,6 +200,23 @@ namespace OpenSim.Server.Handlers.Hypergrid
responsedata["str_response_string"] = OSDParser.SerializeJsonString(resp);
}
+ private string GetCallerIP(Hashtable request)
+ {
+ if (!m_Proxy)
+ return Util.GetCallerIP(request);
+
+ // We're behind a proxy
+ Hashtable headers = (Hashtable)request["headers"];
+ if (headers.ContainsKey("X-Forwarded-For") && headers["X-Forwarded-For"] != null)
+ {
+ IPEndPoint ep = Util.GetClientIPFromXFF((string)headers["X-Forwarded-For"]);
+ if (ep != null)
+ return ep.Address.ToString();
+ }
+
+ // Oops
+ return Util.GetCallerIP(request);
+ }
}
}
diff --git a/OpenSim/Server/Handlers/Hypergrid/UserAgentServerConnector.cs b/OpenSim/Server/Handlers/Hypergrid/UserAgentServerConnector.cs
index 70157d5705..e5f6a5def5 100644
--- a/OpenSim/Server/Handlers/Hypergrid/UserAgentServerConnector.cs
+++ b/OpenSim/Server/Handlers/Hypergrid/UserAgentServerConnector.cs
@@ -67,6 +67,7 @@ namespace OpenSim.Server.Handlers.Hypergrid
throw new Exception("UserAgent server connector cannot proceed because of missing service");
string loginServerIP = gridConfig.GetString("LoginServerIP", "127.0.0.1");
+ bool proxy = gridConfig.GetBoolean("HasProxy", false);
server.AddXmlRPCHandler("agent_is_coming_home", AgentIsComingHome, false);
server.AddXmlRPCHandler("get_home_region", GetHomeRegion, false);
@@ -74,7 +75,7 @@ namespace OpenSim.Server.Handlers.Hypergrid
server.AddXmlRPCHandler("verify_client", VerifyClient, false);
server.AddXmlRPCHandler("logout_agent", LogoutAgent, false);
- server.AddHTTPHandler("/homeagent/", new HomeAgentHandler(m_HomeUsersService, loginServerIP).Handler);
+ server.AddHTTPHandler("/homeagent/", new HomeAgentHandler(m_HomeUsersService, loginServerIP, proxy).Handler);
}
public XmlRpcResponse GetHomeRegion(XmlRpcRequest request, IPEndPoint remoteClient)
diff --git a/OpenSim/Server/Handlers/Login/LLLoginHandlers.cs b/OpenSim/Server/Handlers/Login/LLLoginHandlers.cs
index 30dc65e5e8..48f5f99ed3 100644
--- a/OpenSim/Server/Handlers/Login/LLLoginHandlers.cs
+++ b/OpenSim/Server/Handlers/Login/LLLoginHandlers.cs
@@ -88,14 +88,26 @@ namespace OpenSim.Server.Handlers.Login
startLocation = requestData["start"].ToString();
string clientVersion = "Unknown";
- if (requestData.Contains("version"))
+ if (requestData.Contains("version") && requestData["version"] != null)
clientVersion = requestData["version"].ToString();
// We should do something interesting with the client version...
+ string channel = "Unknown";
+ if (requestData.Contains("channel") && requestData["channel"] != null)
+ channel = requestData["channel"].ToString();
+
+ string mac = "Unknown";
+ if (requestData.Contains("mac") && requestData["mac"] != null)
+ mac = requestData["mac"].ToString();
+
+ string id0 = "Unknown";
+ if (requestData.Contains("id0") && requestData["id0"] != null)
+ id0 = requestData["id0"].ToString();
+
//m_log.InfoFormat("[LOGIN]: XMLRPC Login Requested for {0} {1}, starting in {2}, using {3}", first, last, startLocation, clientVersion);
LoginResponse reply = null;
- reply = m_LocalService.Login(first, last, passwd, startLocation, scopeID, clientVersion, remoteClient);
+ reply = m_LocalService.Login(first, last, passwd, startLocation, scopeID, clientVersion, channel, mac, id0, remoteClient);
XmlRpcResponse response = new XmlRpcResponse();
response.Value = reply.ToHashtable();
@@ -166,7 +178,8 @@ namespace OpenSim.Server.Handlers.Login
m_log.Info("[LOGIN]: LLSD Login Requested for: '" + map["first"].AsString() + "' '" + map["last"].AsString() + "' / " + startLocation);
LoginResponse reply = null;
- reply = m_LocalService.Login(map["first"].AsString(), map["last"].AsString(), map["passwd"].AsString(), startLocation, scopeID, String.Empty, remoteClient);
+ reply = m_LocalService.Login(map["first"].AsString(), map["last"].AsString(), map["passwd"].AsString(), startLocation, scopeID,
+ map["version"].AsString(), map["channel"].AsString(), map["mac"].AsString(), map["id0"].AsString(), remoteClient);
return reply.ToOSDMap();
}
diff --git a/OpenSim/Server/Handlers/Simulation/AgentHandlers.cs b/OpenSim/Server/Handlers/Simulation/AgentHandlers.cs
index 2997430302..1f7e50217f 100644
--- a/OpenSim/Server/Handlers/Simulation/AgentHandlers.cs
+++ b/OpenSim/Server/Handlers/Simulation/AgentHandlers.cs
@@ -52,6 +52,8 @@ namespace OpenSim.Server.Handlers.Simulation
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
private ISimulationService m_SimulationService;
+ protected bool m_Proxy = false;
+
public AgentHandler() { }
public AgentHandler(ISimulationService sim)
@@ -179,13 +181,31 @@ namespace OpenSim.Server.Handlers.Simulation
resp["reason"] = OSD.FromString(reason);
resp["success"] = OSD.FromBoolean(result);
// Let's also send out the IP address of the caller back to the caller (HG 1.5)
- resp["your_ip"] = OSD.FromString(Util.GetCallerIP(request));
+ resp["your_ip"] = OSD.FromString(GetCallerIP(request));
// TODO: add reason if not String.Empty?
responsedata["int_response_code"] = HttpStatusCode.OK;
responsedata["str_response_string"] = OSDParser.SerializeJsonString(resp);
}
+ private string GetCallerIP(Hashtable request)
+ {
+ if (!m_Proxy)
+ return Util.GetCallerIP(request);
+
+ // We're behind a proxy
+ Hashtable headers = (Hashtable)request["headers"];
+ if (headers.ContainsKey("X-Forwarded-For") && headers["X-Forwarded-For"] != null)
+ {
+ IPEndPoint ep = Util.GetClientIPFromXFF((string)headers["X-Forwarded-For"]);
+ if (ep != null)
+ return ep.Address.ToString();
+ }
+
+ // Oops
+ return Util.GetCallerIP(request);
+ }
+
// subclasses can override this
protected virtual bool CreateAgent(GridRegion destination, AgentCircuitData aCircuit, uint teleportFlags, out string reason)
{
diff --git a/OpenSim/Services/Connectors/Hypergrid/UserAgentServiceConnector.cs b/OpenSim/Services/Connectors/Hypergrid/UserAgentServiceConnector.cs
index 6d3c64a875..247dd7ed10 100644
--- a/OpenSim/Services/Connectors/Hypergrid/UserAgentServiceConnector.cs
+++ b/OpenSim/Services/Connectors/Hypergrid/UserAgentServiceConnector.cs
@@ -238,8 +238,12 @@ namespace OpenSim.Services.Connectors.Hypergrid
args["destination_y"] = OSD.FromString(destination.RegionLocY.ToString());
args["destination_name"] = OSD.FromString(destination.RegionName);
args["destination_uuid"] = OSD.FromString(destination.RegionID.ToString());
- if (ipaddress != null)
- args["client_ip"] = OSD.FromString(ipaddress.Address.ToString());
+
+ // 10/3/2010
+ // I added the client_ip up to the regular AgentCircuitData, so this doesn't need to be here.
+ // This need cleaning elsewhere...
+ //if (ipaddress != null)
+ // args["client_ip"] = OSD.FromString(ipaddress.Address.ToString());
return args;
}
diff --git a/OpenSim/Services/Connectors/SimianGrid/SimianUserAccountServiceConnector.cs b/OpenSim/Services/Connectors/SimianGrid/SimianUserAccountServiceConnector.cs
index ddd232286f..9c150ee417 100644
--- a/OpenSim/Services/Connectors/SimianGrid/SimianUserAccountServiceConnector.cs
+++ b/OpenSim/Services/Connectors/SimianGrid/SimianUserAccountServiceConnector.cs
@@ -147,7 +147,7 @@ namespace OpenSim.Services.Connectors.SimianGrid
if (account == null)
{
// Store null responses too, to avoid repeated lookups for missing accounts
- m_accountCache.AddOrUpdate(userID, null, DateTime.Now + TimeSpan.FromSeconds(CACHE_EXPIRATION_SECONDS));
+ m_accountCache.AddOrUpdate(userID, null, CACHE_EXPIRATION_SECONDS);
}
return account;
@@ -225,7 +225,7 @@ namespace OpenSim.Services.Connectors.SimianGrid
if (success)
{
// Cache the user account info
- m_accountCache.AddOrUpdate(data.PrincipalID, data, DateTime.Now + TimeSpan.FromSeconds(CACHE_EXPIRATION_SECONDS));
+ m_accountCache.AddOrUpdate(data.PrincipalID, data, CACHE_EXPIRATION_SECONDS);
}
else
{
@@ -290,7 +290,7 @@ namespace OpenSim.Services.Connectors.SimianGrid
GetFirstLastName(response["Name"].AsString(), out account.FirstName, out account.LastName);
// Cache the user account info
- m_accountCache.AddOrUpdate(account.PrincipalID, account, DateTime.Now + TimeSpan.FromSeconds(CACHE_EXPIRATION_SECONDS));
+ m_accountCache.AddOrUpdate(account.PrincipalID, account, CACHE_EXPIRATION_SECONDS);
return account;
}
diff --git a/OpenSim/Services/HypergridService/UserAgentService.cs b/OpenSim/Services/HypergridService/UserAgentService.cs
index 4653b31eae..d5dda115c8 100644
--- a/OpenSim/Services/HypergridService/UserAgentService.cs
+++ b/OpenSim/Services/HypergridService/UserAgentService.cs
@@ -148,7 +148,6 @@ namespace OpenSim.Services.HypergridService
agentCircuit.ServiceSessionID = region.ServerURI + ";" + UUID.Random();
TravelingAgentInfo old = UpdateTravelInfo(agentCircuit, region);
- //bool success = m_GatekeeperConnector.CreateAgent(region, agentCircuit, (uint)Constants.TeleportFlags.ViaLogin, out reason);
bool success = false;
string myExternalIP = string.Empty;
string gridName = gatekeeper.ServerURI;
@@ -200,6 +199,11 @@ namespace OpenSim.Services.HypergridService
{
if (m_TravelingAgents.ContainsKey(agentCircuit.SessionID))
{
+ // Very important! Override whatever this agent comes with.
+ // UserAgentService always sets the IP for every new agent
+ // with the original IP address.
+ agentCircuit.IPAddress = m_TravelingAgents[agentCircuit.SessionID].ClientIPAddress;
+
old = m_TravelingAgents[agentCircuit.SessionID];
}
diff --git a/OpenSim/Services/Interfaces/ILoginService.cs b/OpenSim/Services/Interfaces/ILoginService.cs
index 9e573393d7..ee9b0b1720 100644
--- a/OpenSim/Services/Interfaces/ILoginService.cs
+++ b/OpenSim/Services/Interfaces/ILoginService.cs
@@ -47,7 +47,8 @@ namespace OpenSim.Services.Interfaces
public interface ILoginService
{
- LoginResponse Login(string firstName, string lastName, string passwd, string startLocation, UUID scopeID, string clientVersion, IPEndPoint clientIP);
+ LoginResponse Login(string firstName, string lastName, string passwd, string startLocation, UUID scopeID,
+ string clientVersion, string channel, string mac, string id0, IPEndPoint clientIP);
Hashtable SetLevel(string firstName, string lastName, string passwd, int level, IPEndPoint clientIP);
}
diff --git a/OpenSim/Services/LLLoginService/LLLoginService.cs b/OpenSim/Services/LLLoginService/LLLoginService.cs
index d30c149cf0..127c4b2c5c 100644
--- a/OpenSim/Services/LLLoginService/LLLoginService.cs
+++ b/OpenSim/Services/LLLoginService/LLLoginService.cs
@@ -208,7 +208,8 @@ namespace OpenSim.Services.LLLoginService
return response;
}
- public LoginResponse Login(string firstName, string lastName, string passwd, string startLocation, UUID scopeID, string clientVersion, IPEndPoint clientIP)
+ public LoginResponse Login(string firstName, string lastName, string passwd, string startLocation, UUID scopeID,
+ string clientVersion, string channel, string mac, string id0, IPEndPoint clientIP)
{
bool success = false;
UUID session = UUID.Random();
@@ -340,7 +341,8 @@ namespace OpenSim.Services.LLLoginService
//
string reason = string.Empty;
GridRegion dest;
- AgentCircuitData aCircuit = LaunchAgentAtGrid(gatekeeper, destination, account, avatar, session, secureSession, position, where, clientVersion, clientIP, out where, out reason, out dest);
+ AgentCircuitData aCircuit = LaunchAgentAtGrid(gatekeeper, destination, account, avatar, session, secureSession, position, where,
+ clientVersion, channel, mac, id0, clientIP, out where, out reason, out dest);
destination = dest;
if (aCircuit == null)
{
@@ -600,7 +602,8 @@ namespace OpenSim.Services.LLLoginService
}
protected AgentCircuitData LaunchAgentAtGrid(GridRegion gatekeeper, GridRegion destination, UserAccount account, AvatarData avatar,
- UUID session, UUID secureSession, Vector3 position, string currentWhere, string viewer, IPEndPoint clientIP, out string where, out string reason, out GridRegion dest)
+ UUID session, UUID secureSession, Vector3 position, string currentWhere, string viewer, string channel, string mac, string id0,
+ IPEndPoint clientIP, out string where, out string reason, out GridRegion dest)
{
where = currentWhere;
ISimulationService simConnector = null;
@@ -640,7 +643,7 @@ namespace OpenSim.Services.LLLoginService
if (m_UserAgentService == null && simConnector != null)
{
circuitCode = (uint)Util.RandomClass.Next(); ;
- aCircuit = MakeAgent(destination, account, avatar, session, secureSession, circuitCode, position, viewer);
+ aCircuit = MakeAgent(destination, account, avatar, session, secureSession, circuitCode, position, clientIP.Address.ToString(), viewer, channel, mac, id0);
success = LaunchAgentDirectly(simConnector, destination, aCircuit, out reason);
if (!success && m_GridService != null)
{
@@ -665,7 +668,7 @@ namespace OpenSim.Services.LLLoginService
if (m_UserAgentService != null)
{
circuitCode = (uint)Util.RandomClass.Next(); ;
- aCircuit = MakeAgent(destination, account, avatar, session, secureSession, circuitCode, position, viewer);
+ aCircuit = MakeAgent(destination, account, avatar, session, secureSession, circuitCode, position, clientIP.Address.ToString(), viewer, channel, mac, id0);
success = LaunchAgentIndirectly(gatekeeper, destination, aCircuit, clientIP, out reason);
if (!success && m_GridService != null)
{
@@ -694,7 +697,8 @@ namespace OpenSim.Services.LLLoginService
}
private AgentCircuitData MakeAgent(GridRegion region, UserAccount account,
- AvatarData avatar, UUID session, UUID secureSession, uint circuit, Vector3 position, string viewer)
+ AvatarData avatar, UUID session, UUID secureSession, uint circuit, Vector3 position,
+ string ipaddress, string viewer, string channel, string mac, string id0)
{
AgentCircuitData aCircuit = new AgentCircuitData();
@@ -715,7 +719,11 @@ namespace OpenSim.Services.LLLoginService
aCircuit.SecureSessionID = secureSession;
aCircuit.SessionID = session;
aCircuit.startpos = position;
+ aCircuit.IPAddress = ipaddress;
aCircuit.Viewer = viewer;
+ aCircuit.Channel = channel;
+ aCircuit.Mac = mac;
+ aCircuit.Id0 = id0;
SetServiceURLs(aCircuit, account);
return aCircuit;
diff --git a/bin/OpenMetaverse.Rendering.Meshmerizer.dll b/bin/OpenMetaverse.Rendering.Meshmerizer.dll
new file mode 100755
index 0000000000..20f53d6b1e
Binary files /dev/null and b/bin/OpenMetaverse.Rendering.Meshmerizer.dll differ
diff --git a/bin/OpenMetaverse.StructuredData.XML b/bin/OpenMetaverse.StructuredData.XML
index b8f45b1510..31f9d60bbc 100644
--- a/bin/OpenMetaverse.StructuredData.XML
+++ b/bin/OpenMetaverse.StructuredData.XML
@@ -1,333 +1,333 @@
-
-
-
- OpenMetaverse.StructuredData
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Uses reflection to create an SDMap from all of the SD
- serializable types in an object
-
- Class or struct containing serializable types
- An SDMap holding the serialized values from the
- container object
-
-
-
- Uses reflection to deserialize member variables in an object from
- an SDMap
-
- Reference to an object to fill with deserialized
- values
- Serialized values to put in the target
- object
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+ OpenMetaverse.StructuredData
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Uses reflection to create an SDMap from all of the SD
+ serializable types in an object
+
+ Class or struct containing serializable types
+ An SDMap holding the serialized values from the
+ container object
+
+
+
+ Uses reflection to deserialize member variables in an object from
+ an SDMap
+
+ Reference to an object to fill with deserialized
+ values
+ Serialized values to put in the target
+ object
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/bin/OpenMetaverse.StructuredData.dll b/bin/OpenMetaverse.StructuredData.dll
index 54681e4bfe..31f34fa390 100644
Binary files a/bin/OpenMetaverse.StructuredData.dll and b/bin/OpenMetaverse.StructuredData.dll differ
diff --git a/bin/OpenMetaverse.XML b/bin/OpenMetaverse.XML
index ca9f359acd..8968bef0af 100644
--- a/bin/OpenMetaverse.XML
+++ b/bin/OpenMetaverse.XML
@@ -1,25250 +1,24951 @@
-
-
-
- OpenMetaverse
-
-
-
-
- Capability to load TGAs to Bitmap
-
-
-
-
- Represents a primitive asset
-
-
-
-
- Base class for all Asset types
-
-
-
- A byte array containing the raw asset data
-
-
- True if the asset it only stored on the server temporarily
-
-
- A unique ID
-
-
-
- Construct a new Asset object
-
-
-
-
- Construct a new Asset object
-
- A unique specific to this asset
- A byte array containing the raw asset data
-
-
-
- Regenerates the AssetData
byte array from the properties
- of the derived class.
-
-
-
-
- Decodes the AssetData, placing it in appropriate properties of the derived
- class.
-
- True if the asset decoding succeeded, otherwise false
-
-
- The assets unique ID
-
-
-
- The "type" of asset, Notecard, Animation, etc
-
-
-
- Initializes a new instance of an AssetPrim object
-
-
-
-
-
-
-
-
-
-
-
-
-
- Override the base classes AssetType
-
-
-
- Only used internally for XML serialization/deserialization
-
-
-
-
- pre-defined built in sounds
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- coins
-
-
- cash register bell
-
-
-
-
-
-
-
-
- rubber
-
-
- plastic
-
-
- flesh
-
-
- wood splintering?
-
-
- glass break
-
-
- metal clunk
-
-
- whoosh
-
-
- shake
-
-
-
-
-
- ding
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- A dictionary containing all pre-defined sounds
-
- A dictionary containing the pre-defined sounds,
- where the key is the sounds ID, and the value is a string
- containing a name to identify the purpose of the sound
-
-
-
- Type of return to use when returning objects from a parcel
-
-
-
-
-
-
- Return objects owned by parcel owner
-
-
- Return objects set to group
-
-
- Return objects not owned by parcel owner or set to group
-
-
- Return a specific list of objects on parcel
-
-
- Return objects that are marked for-sale
-
-
-
- Blacklist/Whitelist flags used in parcels Access List
-
-
-
- Agent is denied access
-
-
- Agent is granted access
-
-
-
- The result of a request for parcel properties
-
-
-
- No matches were found for the request
-
-
- Request matched a single parcel
-
-
- Request matched multiple parcels
-
-
-
- Flags used in the ParcelAccessListRequest packet to specify whether
- we want the access list (whitelist), ban list (blacklist), or both
-
-
-
- Request the access list
-
-
- Request the ban list
-
-
- Request both White and Black lists
-
-
-
- Sequence ID in ParcelPropertiesReply packets (sent when avatar
- tries to cross a parcel border)
-
-
-
- Parcel is currently selected
-
-
- Parcel restricted to a group the avatar is not a
- member of
-
-
- Avatar is banned from the parcel
-
-
- Parcel is restricted to an access list that the
- avatar is not on
-
-
- Response to hovering over a parcel
-
-
-
- The tool to use when modifying terrain levels
-
-
-
- Level the terrain
-
-
- Raise the terrain
-
-
- Lower the terrain
-
-
- Smooth the terrain
-
-
- Add random noise to the terrain
-
-
- Revert terrain to simulator default
-
-
-
- The tool size to use when changing terrain levels
-
-
-
- Small
-
-
- Medium
-
-
- Large
-
-
-
- Reasons agent is denied access to a parcel on the simulator
-
-
-
- Agent is not denied, access is granted
-
-
- Agent is not a member of the group set for the parcel, or which owns the parcel
-
-
- Agent is not on the parcels specific allow list
-
-
- Agent is on the parcels ban list
-
-
- Unknown
-
-
- Agent is not age verified and parcel settings deny access to non age verified avatars
-
-
-
- Parcel overlay type. This is used primarily for highlighting and
- coloring which is why it is a single integer instead of a set of
- flags
-
- These values seem to be poorly thought out. The first three
- bits represent a single value, not flags. For example Auction (0x05) is
- not a combination of OwnedByOther (0x01) and ForSale(0x04). However,
- the BorderWest and BorderSouth values are bit flags that get attached
- to the value stored in the first three bits. Bits four, five, and six
- are unused
-
-
- Public land
-
-
- Land is owned by another avatar
-
-
- Land is owned by a group
-
-
- Land is owned by the current avatar
-
-
- Land is for sale
-
-
- Land is being auctioned
-
-
- To the west of this area is a parcel border
-
-
- To the south of this area is a parcel border
-
-
-
- Various parcel properties
-
-
-
- No flags set
-
-
- Allow avatars to fly (a client-side only restriction)
-
-
- Allow foreign scripts to run
-
-
- This parcel is for sale
-
-
- Allow avatars to create a landmark on this parcel
-
-
- Allows all avatars to edit the terrain on this parcel
-
-
- Avatars have health and can take damage on this parcel.
- If set, avatars can be killed and sent home here
-
-
- Foreign avatars can create objects here
-
-
- All objects on this parcel can be purchased
-
-
- Access is restricted to a group
-
-
- Access is restricted to a whitelist
-
-
- Ban blacklist is enabled
-
-
- Unknown
-
-
- List this parcel in the search directory
-
-
- Allow personally owned parcels to be deeded to group
-
-
- If Deeded, owner contributes required tier to group parcel is deeded to
-
-
- Restrict sounds originating on this parcel to the
- parcel boundaries
-
-
- Objects on this parcel are sold when the land is
- purchsaed
-
-
- Allow this parcel to be published on the web
-
-
- The information for this parcel is mature content
-
-
- The media URL is an HTML page
-
-
- The media URL is a raw HTML string
-
-
- Restrict foreign object pushes
-
-
- Ban all non identified/transacted avatars
-
-
- Allow group-owned scripts to run
-
-
- Allow object creation by group members or group
- objects
-
-
- Allow all objects to enter this parcel
-
-
- Only allow group and owner objects to enter this parcel
-
-
- Voice Enabled on this parcel
-
-
- Use Estate Voice channel for Voice on this parcel
-
-
- Deny Age Unverified Users
-
-
-
- Parcel ownership status
-
-
-
- Placeholder
-
-
- Parcel is leased (owned) by an avatar or group
-
-
- Parcel is in process of being leased (purchased) by an avatar or group
-
-
- Parcel has been abandoned back to Governor Linden
-
-
-
- Category parcel is listed in under search
-
-
-
- No assigned category
-
-
- Linden Infohub or public area
-
-
- Adult themed area
-
-
- Arts and Culture
-
-
- Business
-
-
- Educational
-
-
- Gaming
-
-
- Hangout or Club
-
-
- Newcomer friendly
-
-
- Parks and Nature
-
-
- Residential
-
-
- Shopping
-
-
- Not Used?
-
-
- Other
-
-
- Not an actual category, only used for queries
-
-
-
- Type of teleport landing for a parcel
-
-
-
- Unset, simulator default
-
-
- Specific landing point set for this parcel
-
-
- No landing point set, direct teleports enabled for
- this parcel
-
-
-
- Parcel Media Command used in ParcelMediaCommandMessage
-
-
-
- Stop the media stream and go back to the first frame
-
-
- Pause the media stream (stop playing but stay on current frame)
-
-
- Start the current media stream playing and stop when the end is reached
-
-
- Start the current media stream playing,
- loop to the beginning when the end is reached and continue to play
-
-
- Specifies the texture to replace with video
- If passing the key of a texture, it must be explicitly typecast as a key,
- not just passed within double quotes.
-
-
- Specifies the movie URL (254 characters max)
-
-
- Specifies the time index at which to begin playing
-
-
- Specifies a single agent to apply the media command to
-
-
- Unloads the stream. While the stop command sets the texture to the first frame of the movie,
- unload resets it to the real texture that the movie was replacing.
-
-
- Turn on/off the auto align feature, similar to the auto align checkbox in the parcel media properties
- (NOT to be confused with the "align" function in the textures view of the editor!) Takes TRUE or FALSE as parameter.
-
-
- Allows a Web page or image to be placed on a prim (1.19.1 RC0 and later only).
- Use "text/html" for HTML.
-
-
- Resizes a Web page to fit on x, y pixels (1.19.1 RC0 and later only).
- This might still not be working
-
-
- Sets a description for the media being displayed (1.19.1 RC0 and later only).
-
-
-
- Some information about a parcel of land returned from a DirectoryManager search
-
-
-
- Global Key of record
-
-
- Parcel Owners
-
-
- Name field of parcel, limited to 128 characters
-
-
- Description field of parcel, limited to 256 characters
-
-
- Total Square meters of parcel
-
-
- Total area billable as Tier, for group owned land this will be 10% less than ActualArea
-
-
- True of parcel is in Mature simulator
-
-
- Grid global X position of parcel
-
-
- Grid global Y position of parcel
-
-
- Grid global Z position of parcel (not used)
-
-
- Name of simulator parcel is located in
-
-
- Texture of parcels display picture
-
-
- Float representing calculated traffic based on time spent on parcel by avatars
-
-
- Sale price of parcel (not used)
-
-
- Auction ID of parcel
-
-
-
- Parcel Media Information
-
-
-
- A byte, if 0x1 viewer should auto scale media to fit object
-
-
- A boolean, if true the viewer should loop the media
-
-
- The Asset UUID of the Texture which when applied to a
- primitive will display the media
-
-
- A URL which points to any Quicktime supported media type
-
-
- A description of the media
-
-
- An Integer which represents the height of the media
-
-
- An integer which represents the width of the media
-
-
- A string which contains the mime type of the media
-
-
-
- Parcel of land, a portion of virtual real estate in a simulator
-
-
-
- The total number of contiguous 4x4 meter blocks your agent owns within this parcel
-
-
- The total number of contiguous 4x4 meter blocks contained in this parcel owned by a group or agent other than your own
-
-
- Deprecated, Value appears to always be 0
-
-
- Simulator-local ID of this parcel
-
-
- UUID of the owner of this parcel
-
-
- Whether the land is deeded to a group or not
-
-
-
-
-
- Date land was claimed
-
-
- Appears to always be zero
-
-
- This field is no longer used
-
-
- Minimum corner of the axis-aligned bounding box for this
- parcel
-
-
- Maximum corner of the axis-aligned bounding box for this
- parcel
-
-
- Bitmap describing land layout in 4x4m squares across the
- entire region
-
-
- Total parcel land area
-
-
-
-
-
- Maximum primitives across the entire simulator owned by the same agent or group that owns this parcel that can be used
-
-
- Total primitives across the entire simulator calculated by combining the allowed prim counts for each parcel
- owned by the agent or group that owns this parcel
-
-
- Maximum number of primitives this parcel supports
-
-
- Total number of primitives on this parcel
-
-
- For group-owned parcels this indicates the total number of prims deeded to the group,
- for parcels owned by an individual this inicates the number of prims owned by the individual
-
-
- Total number of primitives owned by the parcel group on
- this parcel, or for parcels owned by an individual with a group set the
- total number of prims set to that group.
-
-
- Total number of prims owned by other avatars that are not set to group, or not the parcel owner
-
-
- A bonus multiplier which allows parcel prim counts to go over times this amount, this does not affect
- the max prims per simulator. e.g: 117 prim parcel limit x 1.5 bonus = 175 allowed
-
-
- Autoreturn value in minutes for others' objects
-
-
-
-
-
- Sale price of the parcel, only useful if ForSale is set
- The SalePrice will remain the same after an ownership
- transfer (sale), so it can be used to see the purchase price after
- a sale if the new owner has not changed it
-
-
- Parcel Name
-
-
- Parcel Description
-
-
- URL For Music Stream
-
-
-
-
-
- Price for a temporary pass
-
-
- How long is pass valid for
-
-
-
-
-
- Key of authorized buyer
-
-
- Key of parcel snapshot
-
-
- The landing point location
-
-
- The landing point LookAt
-
-
- The type of landing enforced from the enum
-
-
-
-
-
-
-
-
-
-
-
- Access list of who is whitelisted on this
- parcel
-
-
- Access list of who is blacklisted on this
- parcel
-
-
- TRUE of region denies access to age unverified users
-
-
- true to obscure (hide) media url
-
-
- true to obscure (hide) music url
-
-
- A struct containing media details
-
-
-
- Displays a parcel object in string format
-
- string containing key=value pairs of a parcel object
-
-
-
- Defalt constructor
-
- Local ID of this parcel
-
-
-
- Update the simulator with any local changes to this Parcel object
-
- Simulator to send updates to
- Whether we want the simulator to confirm
- the update with a reply packet or not
-
-
-
- Set Autoreturn time
-
- Simulator to send the update to
-
-
-
- Parcel (subdivided simulator lots) subsystem
-
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the ParcelDwellReply event
- A ParcelDwellReplyEventArgs object containing the
- data returned from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the ParcelInfoReply event
- A ParcelInfoReplyEventArgs object containing the
- data returned from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the ParcelProperties event
- A ParcelPropertiesEventArgs object containing the
- data returned from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the ParcelAccessListReply event
- A ParcelAccessListReplyEventArgs object containing the
- data returned from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the ParcelObjectOwnersReply event
- A ParcelObjectOwnersReplyEventArgs object containing the
- data returned from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the SimParcelsDownloaded event
- A SimParcelsDownloadedEventArgs object containing the
- data returned from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the ForceSelectObjectsReply event
- A ForceSelectObjectsReplyEventArgs object containing the
- data returned from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the ParcelMediaUpdateReply event
- A ParcelMediaUpdateReplyEventArgs object containing the
- data returned from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the ParcelMediaCommand event
- A ParcelMediaCommandEventArgs object containing the
- data returned from the simulator
-
-
- Thread sync lock object
-
-
-
- Default constructor
-
- A reference to the GridClient object
-
-
-
- Request basic information for a single parcel
-
- Simulator-local ID of the parcel
-
-
-
- Request properties of a single parcel
-
- Simulator containing the parcel
- Simulator-local ID of the parcel
- An arbitrary integer that will be returned
- with the ParcelProperties reply, useful for distinguishing between
- multiple simultaneous requests
-
-
-
- Request the access list for a single parcel
-
- Simulator containing the parcel
- Simulator-local ID of the parcel
- An arbitrary integer that will be returned
- with the ParcelAccessList reply, useful for distinguishing between
- multiple simultaneous requests
-
-
-
-
- Request properties of parcels using a bounding box selection
-
- Simulator containing the parcel
- Northern boundary of the parcel selection
- Eastern boundary of the parcel selection
- Southern boundary of the parcel selection
- Western boundary of the parcel selection
- An arbitrary integer that will be returned
- with the ParcelProperties reply, useful for distinguishing between
- different types of parcel property requests
- A boolean that is returned with the
- ParcelProperties reply, useful for snapping focus to a single
- parcel
-
-
-
- Request all simulator parcel properties (used for populating the Simulator.Parcels
- dictionary)
-
- Simulator to request parcels from (must be connected)
-
-
-
- Request all simulator parcel properties (used for populating the Simulator.Parcels
- dictionary)
-
- Simulator to request parcels from (must be connected)
- If TRUE, will force a full refresh
- Number of milliseconds to pause in between each request
-
-
-
- Request the dwell value for a parcel
-
- Simulator containing the parcel
- Simulator-local ID of the parcel
-
-
-
- Send a request to Purchase a parcel of land
-
- The Simulator the parcel is located in
- The parcels region specific local ID
- true if this parcel is being purchased by a group
- The groups
- true to remove tier contribution if purchase is successful
- The parcels size
- The purchase price of the parcel
-
-
-
-
- Reclaim a parcel of land
-
- The simulator the parcel is in
- The parcels region specific local ID
-
-
-
- Deed a parcel to a group
-
- The simulator the parcel is in
- The parcels region specific local ID
- The groups
-
-
-
- Request prim owners of a parcel of land.
-
- Simulator parcel is in
- The parcels region specific local ID
-
-
-
- Return objects from a parcel
-
- Simulator parcel is in
- The parcels region specific local ID
- the type of objects to return,
- A list containing object owners s to return
-
-
-
- Subdivide (split) a parcel
-
-
-
-
-
-
-
-
-
- Join two parcels of land creating a single parcel
-
-
-
-
-
-
-
-
-
- Get a parcels LocalID
-
- Simulator parcel is in
- Vector3 position in simulator (Z not used)
- 0 on failure, or parcel LocalID on success.
- A call to Parcels.RequestAllSimParcels
is required to populate map and
- dictionary.
-
-
-
- Terraform (raise, lower, etc) an area or whole parcel of land
-
- Simulator land area is in.
- LocalID of parcel, or -1 if using bounding box
- From Enum, Raise, Lower, Level, Smooth, Etc.
- Size of area to modify
- true on successful request sent.
- Settings.STORE_LAND_PATCHES must be true,
- Parcel information must be downloaded using RequestAllSimParcels()
-
-
-
- Terraform (raise, lower, etc) an area or whole parcel of land
-
- Simulator land area is in.
- west border of area to modify
- south border of area to modify
- east border of area to modify
- north border of area to modify
- From Enum, Raise, Lower, Level, Smooth, Etc.
- Size of area to modify
- true on successful request sent.
- Settings.STORE_LAND_PATCHES must be true,
- Parcel information must be downloaded using RequestAllSimParcels()
-
-
-
- Terraform (raise, lower, etc) an area or whole parcel of land
-
- Simulator land area is in.
- LocalID of parcel, or -1 if using bounding box
- west border of area to modify
- south border of area to modify
- east border of area to modify
- north border of area to modify
- From Enum, Raise, Lower, Level, Smooth, Etc.
- Size of area to modify
- How many meters + or - to lower, 1 = 1 meter
- true on successful request sent.
- Settings.STORE_LAND_PATCHES must be true,
- Parcel information must be downloaded using RequestAllSimParcels()
-
-
-
- Terraform (raise, lower, etc) an area or whole parcel of land
-
- Simulator land area is in.
- LocalID of parcel, or -1 if using bounding box
- west border of area to modify
- south border of area to modify
- east border of area to modify
- north border of area to modify
- From Enum, Raise, Lower, Level, Smooth, Etc.
- Size of area to modify
- How many meters + or - to lower, 1 = 1 meter
- Height at which the terraform operation is acting at
-
-
-
- Sends a request to the simulator to return a list of objects owned by specific owners
-
- Simulator local ID of parcel
- Owners, Others, Etc
- List containing keys of avatars objects to select;
- if List is null will return Objects of type selectType
- Response data is returned in the event
-
-
-
- Eject and optionally ban a user from a parcel
-
- target key of avatar to eject
- true to also ban target
-
-
-
- Freeze or unfreeze an avatar over your land
-
- target key to freeze
- true to freeze, false to unfreeze
-
-
-
- Abandon a parcel of land
-
- Simulator parcel is in
- Simulator local ID of parcel
-
-
-
- Requests the UUID of the parcel in a remote region at a specified location
-
- Location of the parcel in the remote region
- Remote region handle
- Remote region UUID
- If successful UUID of the remote parcel, UUID.Zero otherwise
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
- Raises the event
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
- Raises the event
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
- Raises the event
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
- Raises the event
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
- Raises the event
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
- Raises the event
-
-
- Raised when the simulator responds to a request
-
-
- Raised when the simulator responds to a request
-
-
- Raised when the simulator responds to a request
-
-
- Raised when the simulator responds to a request
-
-
- Raised when the simulator responds to a request
-
-
- Raised when the simulator responds to a request
-
-
- Raised when the simulator responds to a request
-
-
- Raised when the simulator responds to a Parcel Update request
-
-
- Raised when the parcel your agent is located sends a ParcelMediaCommand
-
-
-
- Parcel Accesslist
-
-
-
- Agents
-
-
-
-
-
- Flags for specific entry in white/black lists
-
-
-
- Owners of primitives on parcel
-
-
-
- Prim Owners
-
-
- True of owner is group
-
-
- Total count of prims owned by OwnerID
-
-
- true of OwnerID is currently online and is not a group
-
-
- The date of the most recent prim left by OwnerID
-
-
- Contains a parcels dwell data returned from the simulator in response to an
-
-
-
- Construct a new instance of the ParcelDwellReplyEventArgs class
-
- The global ID of the parcel
- The simulator specific ID of the parcel
- The calculated dwell for the parcel
-
-
- Get the global ID of the parcel
-
-
- Get the simulator specific ID of the parcel
-
-
- Get the calculated dwell
-
-
- Contains basic parcel information data returned from the
- simulator in response to an request
-
-
-
- Construct a new instance of the ParcelInfoReplyEventArgs class
-
- The object containing basic parcel info
-
-
- Get the object containing basic parcel info
-
-
- Contains basic parcel information data returned from the simulator in response to an request
-
-
-
- Construct a new instance of the ParcelPropertiesEventArgs class
-
- The object containing the details
- The object containing the details
- The result of the request
- The number of primitieves your agent is
- currently selecting and or sitting on in this parcel
- The user assigned ID used to correlate a request with
- these results
- TODO:
-
-
- Get the simulator the parcel is located in
-
-
- Get the object containing the details
- If Result is NoData, this object will not contain valid data
-
-
- Get the result of the request
-
-
- Get the number of primitieves your agent is
- currently selecting and or sitting on in this parcel
-
-
- Get the user assigned ID used to correlate a request with
- these results
-
-
- TODO:
-
-
- Contains blacklist and whitelist data returned from the simulator in response to an request
-
-
-
- Construct a new instance of the ParcelAccessListReplyEventArgs class
-
- The simulator the parcel is located in
- The user assigned ID used to correlate a request with
- these results
- The simulator specific ID of the parcel
- TODO:
- The list containing the white/blacklisted agents for the parcel
-
-
- Get the simulator the parcel is located in
-
-
- Get the user assigned ID used to correlate a request with
- these results
-
-
- Get the simulator specific ID of the parcel
-
-
- TODO:
-
-
- Get the list containing the white/blacklisted agents for the parcel
-
-
- Contains blacklist and whitelist data returned from the
- simulator in response to an request
-
-
-
- Construct a new instance of the ParcelObjectOwnersReplyEventArgs class
-
- The simulator the parcel is located in
- The list containing prim ownership counts
-
-
- Get the simulator the parcel is located in
-
-
- Get the list containing prim ownership counts
-
-
- Contains the data returned when all parcel data has been retrieved from a simulator
-
-
-
- Construct a new instance of the SimParcelsDownloadedEventArgs class
-
- The simulator the parcel data was retrieved from
- The dictionary containing the parcel data
- The multidimensional array containing a x,y grid mapped
- to each 64x64 parcel's LocalID.
-
-
- Get the simulator the parcel data was retrieved from
-
-
- A dictionary containing the parcel data where the key correlates to the ParcelMap entry
-
-
- Get the multidimensional array containing a x,y grid mapped
- to each 64x64 parcel's LocalID.
-
-
- Contains the data returned when a request
-
-
-
- Construct a new instance of the ForceSelectObjectsReplyEventArgs class
-
- The simulator the parcel data was retrieved from
- The list of primitive IDs
- true if the list is clean and contains the information
- only for a given request
-
-
- Get the simulator the parcel data was retrieved from
-
-
- Get the list of primitive IDs
-
-
- true if the list is clean and contains the information
- only for a given request
-
-
- Contains data when the media data for a parcel the avatar is on changes
-
-
-
- Construct a new instance of the ParcelMediaUpdateReplyEventArgs class
-
- the simulator the parcel media data was updated in
- The updated media information
-
-
- Get the simulator the parcel media data was updated in
-
-
- Get the updated media information
-
-
- Contains the media command for a parcel the agent is currently on
-
-
-
- Construct a new instance of the ParcelMediaCommandEventArgs class
-
- The simulator the parcel media command was issued in
-
-
- The media command that was sent
-
-
-
- Get the simulator the parcel media command was issued in
-
-
-
-
-
-
-
-
- Get the media command that was sent
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- The ObservableDictionary class is used for storing key/value pairs. It has methods for firing
- events to subscribers when items are added, removed, or changed.
-
- Key
- Value
-
-
-
- A dictionary of callbacks to fire when specified action occurs
-
-
-
-
- Register a callback to be fired when an action occurs
-
- The action
- The callback to fire
-
-
-
- Unregister a callback
-
- The action
- The callback to fire
-
-
-
-
-
-
-
-
-
- Internal dictionary that this class wraps around. Do not
- modify or enumerate the contents of this dictionary without locking
-
-
-
- Initializes a new instance of the Class
- with the specified key/value, has the default initial capacity.
-
-
-
- // initialize a new ObservableDictionary named testDict with a string as the key and an int as the value.
- public ObservableDictionary<string, int> testDict = new ObservableDictionary<string, int>();
-
-
-
-
-
- Initializes a new instance of the Class
- with the specified key/value, With its initial capacity specified.
-
- Initial size of dictionary
-
-
- // initialize a new ObservableDictionary named testDict with a string as the key and an int as the value,
- // initially allocated room for 10 entries.
- public ObservableDictionary<string, int> testDict = new ObservableDictionary<string, int>(10);
-
-
-
-
-
- Try to get entry from the with specified key
-
- Key to use for lookup
- Value returned
- if specified key exists, if not found
-
-
- // find your avatar using the Simulator.ObjectsAvatars ObservableDictionary:
- Avatar av;
- if (Client.Network.CurrentSim.ObjectsAvatars.TryGetValue(Client.Self.AgentID, out av))
- Console.WriteLine("Found Avatar {0}", av.Name);
-
-
-
-
-
-
- Finds the specified match.
-
- The match.
- Matched value
-
-
- // use a delegate to find a prim in the ObjectsPrimitives ObservableDictionary
- // with the ID 95683496
- uint findID = 95683496;
- Primitive findPrim = sim.ObjectsPrimitives.Find(
- delegate(Primitive prim) { return prim.ID == findID; });
-
-
-
-
- Find All items in an
- return matching items.
- a containing found items.
-
- Find All prims within 20 meters and store them in a List
-
- int radius = 20;
- List<Primitive> prims = Client.Network.CurrentSim.ObjectsPrimitives.FindAll(
- delegate(Primitive prim) {
- Vector3 pos = prim.Position;
- return ((prim.ParentID == 0) && (pos != Vector3.Zero) && (Vector3.Distance(pos, location) < radius));
- }
- );
-
-
-
-
- Find All items in an
- return matching keys.
- a containing found keys.
-
- Find All keys which also exist in another dictionary
-
- List<UUID> matches = myDict.FindAll(
- delegate(UUID id) {
- return myOtherDict.ContainsKey(id);
- }
- );
-
-
-
-
- Check if Key exists in Dictionary
- Key to check for
- if found, otherwise
-
-
- Check if Value exists in Dictionary
- Value to check for
- if found, otherwise
-
-
-
- Adds the specified key to the dictionary, dictionary locking is not performed,
-
-
- The key
- The value
-
-
-
- Removes the specified key, dictionary locking is not performed
-
- The key.
- if successful, otherwise
-
-
-
- Clear the contents of the dictionary
-
-
-
-
- Enumerator for iterating dictionary entries
-
-
-
-
-
- Gets the number of Key/Value pairs contained in the
-
-
-
-
- Indexer for the dictionary
-
- The key
- The value
-
-
-
- A Wrapper around openjpeg to encode and decode images to and from byte arrays
-
-
-
- TGA Header size
-
-
- OpenJPEG is not threadsafe, so this object is used to lock
- during calls into unmanaged code
-
-
-
- Encode a object into a byte array
-
- The object to encode
- true to enable lossless conversion, only useful for small images ie: sculptmaps
- A byte array containing the encoded Image object
-
-
-
- Encode a object into a byte array
-
- The object to encode
- a byte array of the encoded image
-
-
-
- Decode JPEG2000 data to an and
-
-
- JPEG2000 encoded data
- ManagedImage object to decode to
- Image object to decode to
- True if the decode succeeds, otherwise false
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Encode a object into a byte array
-
- The source object to encode
- true to enable lossless decoding
- A byte array containing the source Bitmap object
-
-
-
- Defines the beginning and ending file positions of a layer in an
- LRCP-progression JPEG2000 file
-
-
-
-
- This structure is used to marshal both encoded and decoded images.
- MUST MATCH THE STRUCT IN dotnet.h!
-
-
-
-
- Information about a single packet in a JPEG2000 stream
-
-
-
- Packet start position
-
-
- Packet header end position
-
-
- Packet end position
-
-
-
- Represents a Sound Asset
-
-
-
- Initializes a new instance of an AssetSound object
-
-
- Initializes a new instance of an AssetSound object with parameters
- A unique specific to this asset
- A byte array containing the raw asset data
-
-
-
- TODO: Encodes a sound file
-
-
-
-
- TODO: Decode a sound file
-
- true
-
-
- Override the base classes AssetType
-
-
-
- Represents a Landmark with RegionID and Position vector
-
-
-
- UUID of the Landmark target region
-
-
- Local position of the target
-
-
- Construct an Asset of type Landmark
-
-
-
- Construct an Asset object of type Landmark
-
- A unique specific to this asset
- A byte array containing the raw asset data
-
-
-
- Constuct an asset of type Landmark
-
- UUID of the target region
- Local position of landmark
-
-
-
- Encode the raw contents of a string with the specific Landmark format
-
-
-
-
- Decode the raw asset data, populating the RegionID and Position
-
- true if the AssetData was successfully decoded to a UUID and Vector
-
-
- Override the base classes AssetType
-
-
-
- Represents an that can be worn on an avatar
- such as a Shirt, Pants, etc.
-
-
-
-
- Represents a Wearable Asset, Clothing, Hair, Skin, Etc
-
-
-
- A string containing the name of the asset
-
-
- A string containing a short description of the asset
-
-
- The Assets WearableType
-
-
- The For-Sale status of the object
-
-
- An Integer representing the purchase price of the asset
-
-
- The of the assets creator
-
-
- The of the assets current owner
-
-
- The of the assets prior owner
-
-
- The of the Group this asset is set to
-
-
- True if the asset is owned by a
-
-
- The Permissions mask of the asset
-
-
- A Dictionary containing Key/Value pairs of the objects parameters
-
-
- A Dictionary containing Key/Value pairs where the Key is the textures Index and the Value is the Textures
-
-
- Initializes a new instance of an AssetWearable object
-
-
- Initializes a new instance of an AssetWearable object with parameters
- A unique specific to this asset
- A byte array containing the raw asset data
-
-
- Initializes a new instance of an AssetWearable object with parameters
- A string containing the asset parameters
-
-
-
- Decode an assets byte encoded data to a string
-
- true if the asset data was decoded successfully
-
-
-
- Encode the assets string represantion into a format consumable by the asset server
-
-
-
- Initializes a new instance of an AssetScriptBinary object
-
-
- Initializes a new instance of an AssetScriptBinary object with parameters
- A unique specific to this asset
- A byte array containing the raw asset data
-
-
- Initializes a new instance of an AssetScriptBinary object with parameters
- A string containing the Clothings data
-
-
- Override the base classes AssetType
-
-
-
- Represents an Animation
-
-
-
- Default Constructor
-
-
-
- Construct an Asset object of type Animation
-
- A unique specific to this asset
- A byte array containing the raw asset data
-
-
- Override the base classes AssetType
-
-
-
- Operation to apply when applying color to texture
-
-
-
-
- Information needed to translate visual param value to RGBA color
-
-
-
-
- Construct VisualColorParam
-
- Operation to apply when applying color to texture
- Colors
-
-
-
- Represents alpha blending and bump infor for a visual parameter
- such as sleive length
-
-
-
- Stregth of the alpha to apply
-
-
- File containing the alpha channel
-
-
- Skip blending if parameter value is 0
-
-
- Use miltiply insted of alpha blending
-
-
-
- Create new alhpa information for a visual param
-
- Stregth of the alpha to apply
- File containing the alpha channel
- Skip blending if parameter value is 0
- Use miltiply insted of alpha blending
-
-
-
- A single visual characteristic of an avatar mesh, such as eyebrow height
-
-
-
- Index of this visual param
-
-
- Internal name
-
-
- Group ID this parameter belongs to
-
-
- Name of the wearable this parameter belongs to
-
-
- Displayable label of this characteristic
-
-
- Displayable label for the minimum value of this characteristic
-
-
- Displayable label for the maximum value of this characteristic
-
-
- Default value
-
-
- Minimum value
-
-
- Maximum value
-
-
- Is this param used for creation of bump layer?
-
-
- Alpha blending/bump info
-
-
- Color information
-
-
- Array of param IDs that are drivers for this parameter
-
-
-
- Set all the values through the constructor
-
- Index of this visual param
- Internal name
-
-
- Displayable label of this characteristic
- Displayable label for the minimum value of this characteristic
- Displayable label for the maximum value of this characteristic
- Default value
- Minimum value
- Maximum value
- Is this param used for creation of bump layer?
- Array of param IDs that are drivers for this parameter
- Alpha blending/bump info
- Color information
-
-
-
- Holds the Params array of all the avatar appearance parameters
-
-
-
- X position of this patch
-
-
- Y position of this patch
-
-
- A 16x16 array of floats holding decompressed layer data
-
-
-
- Creates a LayerData packet for compressed land data given a full
- simulator heightmap and an array of indices of patches to compress
-
- A 256 * 256 array of floating point values
- specifying the height at each meter in the simulator
- Array of indexes in the 16x16 grid of patches
- for this simulator. For example if 1 and 17 are specified, patches
- x=1,y=0 and x=1,y=1 are sent
-
-
-
-
- Add a patch of terrain to a BitPacker
-
- BitPacker to write the patch to
- Heightmap of the simulator, must be a 256 *
- 256 float array
- X offset of the patch to create, valid values are
- from 0 to 15
- Y offset of the patch to create, valid values are
- from 0 to 15
-
-
-
- A Name Value pair with additional settings, used in the protocol
- primarily to transmit avatar names and active group in object packets
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Constructor that takes all the fields as parameters
-
-
-
-
-
-
-
-
-
- Constructor that takes a single line from a NameValue field
-
-
-
-
- Type of the value
-
-
- Unknown
-
-
- String value
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Deprecated
-
-
- String value, but designated as an asset
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Starts a thread that keeps the daemon running
-
-
-
-
-
-
- Stops the daemon and the thread keeping it running
-
-
-
-
-
-
-
-
-
-
-
-
- This is used to initialize and stop the Connector as a whole. The Connector
- Create call must be completed successfully before any other requests are made
- (typically during application initialization). The shutdown should be called
- when the application is shutting down to gracefully release resources
-
- A string value indicting the Application name
- URL for the management server
- LoggingSettings
-
-
-
-
-
- Shutdown Connector -- Should be called when the application is shutting down
- to gracefully release resources
-
- Handle returned from successful Connector ‘create’ request
-
-
-
- Mute or unmute the microphone
-
- Handle returned from successful Connector ‘create’ request
- true (mute) or false (unmute)
-
-
-
- Mute or unmute the speaker
-
- Handle returned from successful Connector ‘create’ request
- true (mute) or false (unmute)
-
-
-
- Set microphone volume
-
- Handle returned from successful Connector ‘create’ request
- The level of the audio, a number between -100 and 100 where
- 0 represents ‘normal’ speaking volume
-
-
-
- Set local speaker volume
-
- Handle returned from successful Connector ‘create’ request
- The level of the audio, a number between -100 and 100 where
- 0 represents ‘normal’ speaking volume
-
-
-
- Create a Session
- Sessions typically represent a connection to a media session with one or more
- participants. This is used to generate an ‘outbound’ call to another user or
- channel. The specifics depend on the media types involved. A session handle is
- required to control the local user functions within the session (or remote
- users if the current account has rights to do so). Currently creating a
- session automatically connects to the audio media, there is no need to call
- Session.Connect at this time, this is reserved for future use.
-
- Handle returned from successful Connector ‘create’ request
- This is the URI of the terminating point of the session (ie who/what is being called)
- This is the display name of the entity being called (user or channel)
- Only needs to be supplied when the target URI is password protected
- This indicates the format of the password as passed in. This can either be
- “ClearText” or “SHA1UserName”. If this element does not exist, it is assumed to be “ClearText”. If it is
- “SHA1UserName”, the password as passed in is the SHA1 hash of the password and username concatenated together,
- then base64 encoded, with the final “=” character stripped off.
-
-
-
-
-
-
- Used to accept a call
-
- SessionHandle such as received from SessionNewEvent
- "default"
-
-
-
-
- This command is used to start the audio render process, which will then play
- the passed in file through the selected audio render device. This command
- should not be issued if the user is on a call.
-
- The fully qualified path to the sound file.
- True if the file is to be played continuously and false if it is should be played once.
-
-
-
-
- This command is used to stop the audio render process.
-
- The fully qualified path to the sound file issued in the start render command.
-
-
-
-
- This is used to ‘end’ an established session (i.e. hang-up or disconnect).
-
- Handle returned from successful Session ‘create’ request or a SessionNewEvent
-
-
-
-
- Set the combined speaking and listening position in 3D space.
-
- Handle returned from successful Session ‘create’ request or a SessionNewEvent
- Speaking position
- Listening position
-
-
-
-
- Set User Volume for a particular user. Does not affect how other users hear that user.
-
- Handle returned from successful Session ‘create’ request or a SessionNewEvent
-
- The level of the audio, a number between -100 and 100 where 0 represents ‘normal’ speaking volume
-
-
-
-
- Start up the Voice service.
-
-
-
-
- Handle miscellaneous request status
-
-
-
- ///If something goes wrong, we log it.
-
-
-
- Cleanup oject resources
-
-
-
-
- Request voice cap when changing regions
-
-
-
-
- Handle a change in session state
-
-
-
-
- Close a voice session
-
-
-
-
-
- Locate a Session context from its handle
-
- Creates the session context if it does not exist.
-
-
-
- Handle completion of main voice cap request.
-
-
-
-
-
-
-
- Daemon has started so connect to it.
-
-
-
-
- The daemon TCP connection is open.
-
-
-
-
- Handle creation of the Connector.
-
-
-
-
- Handle response to audio output device query
-
-
-
-
- Handle response to audio input device query
-
-
-
-
- Set voice channel for new parcel
-
-
-
-
-
- Request info from a parcel capability Uri.
-
-
-
-
-
- Receive parcel voice cap
-
-
-
-
-
-
-
- Tell Vivox where we are standing
-
- This has to be called when we move or turn.
-
-
-
- Start and stop updating out position.
-
-
-
-
-
- This is used to login a specific user account(s). It may only be called after
- Connector initialization has completed successfully
-
- Handle returned from successful Connector ‘create’ request
- User's account name
- User's account password
- Values may be “AutoAnswer” or “VerifyAnswer”
- ""
- This is an integer that specifies how often
- the daemon will send participant property events while in a channel. If this is not set
- the default will be “on state change”, which means that the events will be sent when
- the participant starts talking, stops talking, is muted, is unmuted.
- The valid values are:
- 0 – Never
- 5 – 10 times per second
- 10 – 5 times per second
- 50 – 1 time per second
- 100 – on participant state change (this is the default)
- false
-
-
-
-
- This is used to logout a user session. It should only be called with a valid AccountHandle.
-
- Handle returned from successful Connector ‘login’ request
-
-
-
-
- This is used to get a list of audio devices that can be used for capture (input) of voice.
-
-
-
-
-
- This is used to get a list of audio devices that can be used for render (playback) of voice.
-
-
-
-
- This command is used to select the render device.
-
- The name of the device as returned by the Aux.GetRenderDevices command.
-
-
-
- This command is used to select the capture device.
-
- The name of the device as returned by the Aux.GetCaptureDevices command.
-
-
-
- This command is used to start the audio capture process which will cause
- AuxAudioProperty Events to be raised. These events can be used to display a
- microphone VU meter for the currently selected capture device. This command
- should not be issued if the user is on a call.
-
- (unused but required)
-
-
-
-
- This command is used to stop the audio capture process.
-
-
-
-
-
- This command is used to set the mic volume while in the audio tuning process.
- Once an acceptable mic level is attained, the application must issue a
- connector set mic volume command to have that level be used while on voice
- calls.
-
- the microphone volume (-100 to 100 inclusive)
-
-
-
-
- This command is used to set the speaker volume while in the audio tuning
- process. Once an acceptable speaker level is attained, the application must
- issue a connector set speaker volume command to have that level be used while
- on voice calls.
-
- the speaker volume (-100 to 100 inclusive)
-
-
-
-
- Event for most mundane request reposnses.
-
-
-
- Response to Connector.Create request
-
-
- Response to Aux.GetCaptureDevices request
-
-
- Response to Aux.GetRenderDevices request
-
-
- Audio Properties Events are sent after audio capture is started.
- These events are used to display a microphone VU meter
-
-
- Response to Account.Login request
-
-
- This event message is sent whenever the login state of the
- particular Account has transitioned from one value to another
-
-
-
- List of audio input devices
-
-
-
-
- List of audio output devices
-
-
-
-
- Set audio test mode
-
-
-
- Enable logging
-
-
- The folder where any logs will be created
-
-
- This will be prepended to beginning of each log file
-
-
- The suffix or extension to be appended to each log file
-
-
-
- 0: NONE - No logging
- 1: ERROR - Log errors only
- 2: WARNING - Log errors and warnings
- 3: INFO - Log errors, warnings and info
- 4: DEBUG - Log errors, warnings, info and debug
-
-
-
-
- Constructor for default logging settings
-
-
-
- Audio Properties Events are sent after audio capture is started. These events are used to display a microphone VU meter
-
-
-
- Interface requirements for Messaging system
-
-
-
-
- The current status of a texture request as it moves through the pipeline or final result of a texture request.
-
-
-
- The initial state given to a request. Requests in this state
- are waiting for an available slot in the pipeline
-
-
- A request that has been added to the pipeline and the request packet
- has been sent to the simulator
-
-
- A request that has received one or more packets back from the simulator
-
-
- A request that has received all packets back from the simulator
-
-
- A request that has taken longer than
- to download OR the initial packet containing the packet information was never received
-
-
- The texture request was aborted by request of the agent
-
-
- The simulator replied to the request that it was not able to find the requested texture
-
-
-
- A callback fired to indicate the status or final state of the requested texture. For progressive
- downloads this will fire each time new asset data is returned from the simulator.
-
- The indicating either Progress for textures not fully downloaded,
- or the final result of the request after it has been processed through the TexturePipeline
- The object containing the Assets ID, raw data
- and other information. For progressive rendering the will contain
- the data from the beginning of the file. For failed, aborted and timed out requests it will contain
- an empty byte array.
-
-
-
- Texture request download handler, allows a configurable number of download slots which manage multiple
- concurrent texture downloads from the
-
- This class makes full use of the internal
- system for full texture downloads.
-
-
- A dictionary containing all pending and in-process transfer requests where the Key is both the RequestID
- and also the Asset Texture ID, and the value is an object containing the current state of the request and also
- the asset data as it is being re-assembled
-
-
- Holds the reference to the client object
-
-
- Maximum concurrent texture requests allowed at a time
-
-
- An array of objects used to manage worker request threads
-
-
- An array of worker slots which shows the availablity status of the slot
-
-
- The primary thread which manages the requests.
-
-
- true if the TexturePipeline is currently running
-
-
- A synchronization object used by the primary thread
-
-
- A refresh timer used to increase the priority of stalled requests
-
-
-
- Default constructor, Instantiates a new copy of the TexturePipeline class
-
- Reference to the instantiated object
-
-
-
- Initialize callbacks required for the TexturePipeline to operate
-
-
-
-
- Shutdown the TexturePipeline and cleanup any callbacks or transfers
-
-
-
-
- Request a texture asset from the simulator using the system to
- manage the requests and re-assemble the image from the packets received from the simulator
-
- The of the texture asset to download
- The of the texture asset.
- Use for most textures, or for baked layer texture assets
- A float indicating the requested priority for the transfer. Higher priority values tell the simulator
- to prioritize the request before lower valued requests. An image already being transferred using the can have
- its priority changed by resending the request with the new priority value
- Number of quality layers to discard.
- This controls the end marker of the data sent
- The packet number to begin the request at. A value of 0 begins the request
- from the start of the asset texture
- The callback to fire when the image is retrieved. The callback
- will contain the result of the request and the texture asset data
- If true, the callback will be fired for each chunk of the downloaded image.
- The callback asset parameter will contain all previously received chunks of the texture asset starting
- from the beginning of the request
-
-
-
- Sends the actual request packet to the simulator
-
- The image to download
- Type of the image to download, either a baked
- avatar texture or a normal texture
- Priority level of the download. Default is
- 1,013,000.0f
- Number of quality layers to discard.
- This controls the end marker of the data sent
- Packet number to start the download at.
- This controls the start marker of the data sent
- Sending a priority of 0 and a discardlevel of -1 aborts
- download
-
-
-
- Cancel a pending or in process texture request
-
- The texture assets unique ID
-
-
-
- Master Download Thread, Queues up downloads in the threadpool
-
-
-
-
- The worker thread that sends the request and handles timeouts
-
- A object containing the request details
-
-
-
- Handle responses from the simulator that tell us a texture we have requested is unable to be located
- or no longer exists. This will remove the request from the pipeline and free up a slot if one is in use
-
- The sender
- The EventArgs object containing the packet data
-
-
-
- Handles the remaining Image data that did not fit in the initial ImageData packet
-
- The sender
- The EventArgs object containing the packet data
-
-
-
- Handle the initial ImageDataPacket sent from the simulator
-
- The sender
- The EventArgs object containing the packet data
-
-
- Current number of pending and in-process transfers
-
-
-
- A request task containing information and status of a request as it is processed through the
-
-
-
- The current which identifies the current status of the request
-
-
- The Unique Request ID, This is also the Asset ID of the texture being requested
-
-
- The slot this request is occupying in the threadpoolSlots array
-
-
- The ImageType of the request.
-
-
- The callback to fire when the request is complete, will include
- the and the
- object containing the result data
-
-
- If true, indicates the callback will be fired whenever new data is returned from the simulator.
- This is used to progressively render textures as portions of the texture are received.
-
-
- An object that maintains the data of an request thats in-process.
-
-
-
- Type of gesture step
-
-
-
-
- Base class for gesture steps
-
-
-
-
- Retururns what kind of gesture step this is
-
-
-
-
- Describes animation step of a gesture
-
-
-
-
- If true, this step represents start of animation, otherwise animation stop
-
-
-
-
- Animation asset
-
-
-
-
- Animation inventory name
-
-
-
-
- Returns what kind of gesture step this is
-
-
-
-
- Describes sound step of a gesture
-
-
-
-
- Sound asset
-
-
-
-
- Sound inventory name
-
-
-
-
- Returns what kind of gesture step this is
-
-
-
-
- Describes sound step of a gesture
-
-
-
-
- Text to output in chat
-
-
-
-
- Returns what kind of gesture step this is
-
-
-
-
- Describes sound step of a gesture
-
-
-
-
- If true in this step we wait for all animations to finish
-
-
-
-
- If true gesture player should wait for the specified amount of time
-
-
-
-
- Time in seconds to wait if WaitForAnimation is false
-
-
-
-
- Returns what kind of gesture step this is
-
-
-
-
- Describes the final step of a gesture
-
-
-
-
- Returns what kind of gesture step this is
-
-
-
-
- Represents a sequence of animations, sounds, and chat actions
-
-
-
-
- Keyboard key that triggers the gestyre
-
-
-
-
- Modifier to the trigger key
-
-
-
-
- String that triggers playing of the gesture sequence
-
-
-
-
- Text that replaces trigger in chat once gesture is triggered
-
-
-
-
- Sequence of gesture steps
-
-
-
-
- Constructs guesture asset
-
-
-
-
- Constructs guesture asset
-
- A unique specific to this asset
- A byte array containing the raw asset data
-
-
-
- Encodes gesture asset suitable for uplaod
-
-
-
-
- Decodes gesture assset into play sequence
-
- true if the asset data was decoded successfully
-
-
-
- Returns asset type
-
-
-
-
- Permissions for control of object media
-
-
-
-
- Style of cotrols that shold be displayed to the user
-
-
-
-
- Class representing media data for a single face
-
-
-
- Is display of the alternative image enabled
-
-
- Should media auto loop
-
-
- Shoule media be auto played
-
-
- Auto scale media to prim face
-
-
- Should viewer automatically zoom in on the face when clicked
-
-
- Should viewer interpret first click as interaction with the media
- or when false should the first click be treated as zoom in commadn
-
-
- Style of controls viewer should display when
- viewer media on this face
-
-
- Starting URL for the media
-
-
- Currently navigated URL
-
-
- Media height in pixes
-
-
- Media width in pixels
-
-
- Who can controls the media
-
-
- Who can interact with the media
-
-
- Is URL whitelist enabled
-
-
- Array of URLs that are whitelisted
-
-
-
- Serialize to OSD
-
- OSDMap with the serialized data
-
-
-
- Deserialize from OSD data
-
- Serialized OSD data
- Deserialized object
-
-
-
- Particle system specific enumerators, flags and methods.
-
-
-
-
- Current version of the media data for the prim
-
-
-
-
- Array of media entries indexed by face number
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Foliage type for this primitive. Only applicable if this
- primitive is foliage
-
-
- Unknown
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Identifies the owner if audio or a particle system is
- active
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Default constructor
-
-
-
-
- Packs PathTwist, PathTwistBegin, PathRadiusOffset, and PathSkew
- parameters in to signed eight bit values
-
- Floating point parameter to pack
- Signed eight bit value containing the packed parameter
-
-
-
- Unpacks PathTwist, PathTwistBegin, PathRadiusOffset, and PathSkew
- parameters from signed eight bit integers to floating point values
-
- Signed eight bit value to unpack
- Unpacked floating point value
-
-
- Uses basic heuristics to estimate the primitive shape
-
-
-
- Texture animation mode
-
-
-
- Disable texture animation
-
-
- Enable texture animation
-
-
- Loop when animating textures
-
-
- Animate in reverse direction
-
-
- Animate forward then reverse
-
-
- Slide texture smoothly instead of frame-stepping
-
-
- Rotate texture instead of using frames
-
-
- Scale texture instead of using frames
-
-
-
- A single textured face. Don't instantiate this class yourself, use the
- methods in TextureEntry
-
-
-
-
- Contains the definition for individual faces
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- In the future this will specify whether a webpage is
- attached to this face
-
-
-
-
-
-
- Represents all of the texturable faces for an object
-
- Grid objects have infinite faces, with each face
- using the properties of the default face unless set otherwise. So if
- you have a TextureEntry with a default texture uuid of X, and face 18
- has a texture UUID of Y, every face would be textured with X except for
- face 18 that uses Y. In practice however, primitives utilize a maximum
- of nine faces
-
-
-
-
-
-
-
-
-
- Constructor that takes a default texture UUID
-
- Texture UUID to use as the default texture
-
-
-
- Constructor that takes a TextureEntryFace
for the
- default face
-
- Face to use as the default face
-
-
-
- Constructor that creates the TextureEntry class from a byte array
-
- Byte array containing the TextureEntry field
- Starting position of the TextureEntry field in
- the byte array
- Length of the TextureEntry field, in bytes
-
-
-
- This will either create a new face if a custom face for the given
- index is not defined, or return the custom face for that index if
- it already exists
-
- The index number of the face to create or
- retrieve
- A TextureEntryFace containing all the properties for that
- face
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Controls the texture animation of a particular prim
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Complete structure for the particle system
-
-
-
- Particle Flags
- There appears to be more data packed in to this area
- for many particle systems. It doesn't appear to be flag values
- and serialization breaks unless there is a flag for every
- possible bit so it is left as an unsigned integer
-
-
- pattern of particles
-
-
- A representing the maximimum age (in seconds) particle will be displayed
- Maximum value is 30 seconds
-
-
- A representing the number of seconds,
- from when the particle source comes into view,
- or the particle system's creation, that the object will emits particles;
- after this time period no more particles are emitted
-
-
- A in radians that specifies where particles will not be created
-
-
- A in radians that specifies where particles will be created
-
-
- A representing the number of seconds between burts.
-
-
- A representing the number of meters
- around the center of the source where particles will be created.
-
-
- A representing in seconds, the minimum speed between bursts of new particles
- being emitted
-
-
- A representing in seconds the maximum speed of new particles being emitted.
-
-
- A representing the maximum number of particles emitted per burst
-
-
- A which represents the velocity (speed) from the source which particles are emitted
-
-
- A which represents the Acceleration from the source which particles are emitted
-
-
- The Key of the texture displayed on the particle
-
-
- The Key of the specified target object or avatar particles will follow
-
-
- Flags of particle from
-
-
- Max Age particle system will emit particles for
-
-
- The the particle has at the beginning of its lifecycle
-
-
- The the particle has at the ending of its lifecycle
-
-
- A that represents the starting X size of the particle
- Minimum value is 0, maximum value is 4
-
-
- A that represents the starting Y size of the particle
- Minimum value is 0, maximum value is 4
-
-
- A that represents the ending X size of the particle
- Minimum value is 0, maximum value is 4
-
-
- A that represents the ending Y size of the particle
- Minimum value is 0, maximum value is 4
-
-
-
- Decodes a byte[] array into a ParticleSystem Object
-
- ParticleSystem object
- Start position for BitPacker
-
-
-
- Generate byte[] array from particle data
-
- Byte array
-
-
-
- Particle source pattern
-
-
-
- None
-
-
- Drop particles from source position with no force
-
-
- "Explode" particles in all directions
-
-
- Particles shoot across a 2D area
-
-
- Particles shoot across a 3D Cone
-
-
- Inverse of AngleCone (shoot particles everywhere except the 3D cone defined
-
-
-
- Particle Data Flags
-
-
-
- None
-
-
- Interpolate color and alpha from start to end
-
-
- Interpolate scale from start to end
-
-
- Bounce particles off particle sources Z height
-
-
- velocity of particles is dampened toward the simulators wind
-
-
- Particles follow the source
-
-
- Particles point towards the direction of source's velocity
-
-
- Target of the particles
-
-
- Particles are sent in a straight line
-
-
- Particles emit a glow
-
-
- used for point/grab/touch
-
-
-
- Particle Flags Enum
-
-
-
- None
-
-
- Acceleration and velocity for particles are
- relative to the object rotation
-
-
- Particles use new 'correct' angle parameters
-
-
-
- Parameters used to construct a visual representation of a primitive
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Attachment point to an avatar
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Information on the flexible properties of a primitive
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Default constructor
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Information on the light properties of a primitive
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Default constructor
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Information on the sculpt properties of a sculpted primitive
-
-
-
-
- Default constructor
-
-
-
-
-
-
-
-
-
-
-
- Render inside out (inverts the normals).
-
-
-
-
- Render an X axis mirror of the sculpty.
-
-
-
-
- Extended properties to describe an object
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Default constructor
-
-
-
-
- Set the properties that are set in an ObjectPropertiesFamily packet
-
- that has
- been partially filled by an ObjectPropertiesFamily packet
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Map layer request type
-
-
-
- Objects and terrain are shown
-
-
- Only the terrain is shown, no objects
-
-
- Overlay showing land for sale and for auction
-
-
-
- Type of grid item, such as telehub, event, populator location, etc.
-
-
-
- Telehub
-
-
- PG rated event
-
-
- Mature rated event
-
-
- Popular location
-
-
- Locations of avatar groups in a region
-
-
- Land for sale
-
-
- Classified ad
-
-
- Adult rated event
-
-
- Adult land for sale
-
-
-
- Information about a region on the grid map
-
-
-
- Sim X position on World Map
-
-
- Sim Y position on World Map
-
-
- Sim Name (NOTE: In lowercase!)
-
-
-
-
-
- Appears to always be zero (None)
-
-
- Sim's defined Water Height
-
-
-
-
-
- UUID of the World Map image
-
-
- Unique identifier for this region, a combination of the X
- and Y position
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Visual chunk of the grid map
-
-
-
-
- Base class for Map Items
-
-
-
- The Global X position of the item
-
-
- The Global Y position of the item
-
-
- Get the Local X position of the item
-
-
- Get the Local Y position of the item
-
-
- Get the Handle of the region
-
-
-
- Represents an agent or group of agents location
-
-
-
-
- Represents a Telehub location
-
-
-
-
- Represents a non-adult parcel of land for sale
-
-
-
-
- Represents an Adult parcel of land for sale
-
-
-
-
- Represents a PG Event
-
-
-
-
- Represents a Mature event
-
-
-
-
- Represents an Adult event
-
-
-
-
- Manages grid-wide tasks such as the world map
-
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the CoarseLocationUpdate event
- A CoarseLocationUpdateEventArgs object containing the
- data sent by simulator
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the GridRegion event
- A GridRegionEventArgs object containing the
- data sent by simulator
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the GridLayer event
- A GridLayerEventArgs object containing the
- data sent by simulator
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the GridItems event
- A GridItemEventArgs object containing the
- data sent by simulator
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the RegionHandleReply event
- A RegionHandleReplyEventArgs object containing the
- data sent by simulator
-
-
- Thread sync lock object
-
-
- A dictionary of all the regions, indexed by region name
-
-
- A dictionary of all the regions, indexed by region handle
-
-
-
- Constructor
-
- Instance of GridClient object to associate with this GridManager instance
-
-
-
-
-
-
-
-
-
- Request a map layer
-
- The name of the region
- The type of layer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Request data for all mainland (Linden managed) simulators
-
-
-
-
- Request the region handle for the specified region UUID
-
- UUID of the region to look up
-
-
-
- Get grid region information using the region name, this function
- will block until it can find the region or gives up
-
- Name of sim you're looking for
- Layer that you are requesting
- Will contain a GridRegion for the sim you're
- looking for if successful, otherwise an empty structure
- True if the GridRegion was successfully fetched, otherwise
- false
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Raised when the simulator sends a
- containing the location of agents in the simulator
-
-
- Raised when the simulator sends a Region Data in response to
- a Map request
-
-
- Raised when the simulator sends GridLayer object containing
- a map tile coordinates and texture information
-
-
- Raised when the simulator sends GridItems object containing
- details on events, land sales at a specific location
-
-
- Raised in response to a Region lookup
-
-
- Unknown
-
-
- Current direction of the sun
-
-
- Current angular velocity of the sun
-
-
- Current world time
-
-
-
- Main class to expose grid functionality to clients. All of the
- classes needed for sending and receiving data are accessible through
- this class.
-
-
-
- // Example minimum code required to instantiate class and
- // connect to a simulator.
- using System;
- using System.Collections.Generic;
- using System.Text;
- using OpenMetaverse;
-
- namespace FirstBot
- {
- class Bot
- {
- public static GridClient Client;
- static void Main(string[] args)
- {
- Client = new GridClient(); // instantiates the GridClient class
- // to the global Client object
- // Login to Simulator
- Client.Network.Login("FirstName", "LastName", "Password", "FirstBot", "1.0");
- // Wait for a Keypress
- Console.ReadLine();
- // Logout of simulator
- Client.Network.Logout();
- }
- }
- }
-
-
-
-
- Networking subsystem
-
-
- Settings class including constant values and changeable
- parameters for everything
-
-
- Parcel (subdivided simulator lots) subsystem
-
-
- Our own avatars subsystem
-
-
- Other avatars subsystem
-
-
- Estate subsystem
-
-
- Friends list subsystem
-
-
- Grid (aka simulator group) subsystem
-
-
- Object subsystem
-
-
- Group subsystem
-
-
- Asset subsystem
-
-
- Appearance subsystem
-
-
- Inventory subsystem
-
-
- Directory searches including classifieds, people, land
- sales, etc
-
-
- Handles land, wind, and cloud heightmaps
-
-
- Handles sound-related networking
-
-
- Throttling total bandwidth usage, or allocating bandwidth
- for specific data stream types
-
-
-
- Default constructor
-
-
-
-
- Return the full name of this instance
-
- Client avatars full name
-
-
-
- Attempts to convert an LLSD structure to a known Packet type
-
- Event name, this must match an actual
- packet name for a Packet to be successfully built
- LLSD to convert to a Packet
- A Packet on success, otherwise null
-
-
-
- Class that handles the local asset cache
-
-
-
-
- Default constructor
-
- A reference to the GridClient object
-
-
-
- Disposes cleanup timer
-
-
-
-
- Only create timer when needed
-
-
-
-
- Return bytes read from the local asset cache, null if it does not exist
-
- UUID of the asset we want to get
- Raw bytes of the asset, or null on failure
-
-
-
- Returns ImageDownload object of the
- image from the local image cache, null if it does not exist
-
- UUID of the image we want to get
- ImageDownload object containing the image, or null on failure
-
-
-
- Constructs a file name of the cached asset
-
- UUID of the asset
- String with the file name of the cahced asset
-
-
-
- Saves an asset to the local cache
-
- UUID of the asset
- Raw bytes the asset consists of
- Weather the operation was successfull
-
-
-
- Get the file name of the asset stored with gived UUID
-
- UUID of the asset
- Null if we don't have that UUID cached on disk, file name if found in the cache folder
-
-
-
- Checks if the asset exists in the local cache
-
- UUID of the asset
- True is the asset is stored in the cache, otherwise false
-
-
-
- Wipes out entire cache
-
-
-
-
- Brings cache size to the 90% of the max size
-
-
-
-
- Asynchronously brings cache size to the 90% of the max size
-
-
-
-
- Adds up file sizes passes in a FileInfo array
-
-
-
-
- Checks whether caching is enabled
-
-
-
-
- Periodically prune the cache
-
-
-
-
- Nicely formats file sizes
-
- Byte size we want to output
- String with humanly readable file size
-
-
-
- Allows setting weather to periodicale prune the cache if it grows too big
- Default is enabled, when caching is enabled
-
-
-
-
- How long (in ms) between cache checks (default is 5 min.)
-
-
-
-
- Helper class for sorting files by their last accessed time
-
-
-
-
- Extract the avatar UUID encoded in a SIP URI
-
-
-
-
-
-
- Represents an LSL Text object containing a string of UTF encoded characters
-
-
-
- A string of characters represting the script contents
-
-
- Initializes a new AssetScriptText object
-
-
-
- Initializes a new AssetScriptText object with parameters
-
- A unique specific to this asset
- A byte array containing the raw asset data
-
-
-
- Initializes a new AssetScriptText object with parameters
-
- A string containing the scripts contents
-
-
-
- Encode a string containing the scripts contents into byte encoded AssetData
-
-
-
-
- Decode a byte array containing the scripts contents into a string
-
- true if decoding is successful
-
-
- Override the base classes AssetType
-
-
-
- NetworkManager is responsible for managing the network layer of
- OpenMetaverse. It tracks all the server connections, serializes
- outgoing traffic and deserializes incoming traffic, and provides
- instances of delegates for network-related events.
-
-
- Login Routines
-
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the PacketSent Event
- A PacketSentEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the LoggedOut Event
- A LoggedOutEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the SimConnecting Event
- A SimConnectingEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the SimConnected Event
- A SimConnectedEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the SimDisconnected Event
- A SimDisconnectedEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the Disconnected Event
- A DisconnectedEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the SimChanged Event
- A SimChangedEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the EventQueueRunning Event
- A EventQueueRunningEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- All of the simulators we are currently connected to
-
-
- Handlers for incoming capability events
-
-
- Handlers for incoming packets
-
-
- Incoming packets that are awaiting handling
-
-
- Outgoing packets that are awaiting handling
-
-
-
- Default constructor
-
- Reference to the GridClient object
-
-
-
- Register an event handler for a packet. This is a low level event
- interface and should only be used if you are doing something not
- supported in the library
-
- Packet type to trigger events for
- Callback to fire when a packet of this type
- is received
-
-
-
- Unregister an event handler for a packet. This is a low level event
- interface and should only be used if you are doing something not
- supported in the library
-
- Packet type this callback is registered with
- Callback to stop firing events for
-
-
-
- Register a CAPS event handler. This is a low level event interface
- and should only be used if you are doing something not supported in
- the library
-
- Name of the CAPS event to register a handler for
- Callback to fire when a CAPS event is received
-
-
-
- Unregister a CAPS event handler. This is a low level event interface
- and should only be used if you are doing something not supported in
- the library
-
- Name of the CAPS event this callback is
- registered with
- Callback to stop firing events for
-
-
-
- Send a packet to the simulator the avatar is currently occupying
-
- Packet to send
-
-
-
- Send a packet to a specified simulator
-
- Packet to send
- Simulator to send the packet to
-
-
-
- Connect to a simulator
-
- IP address to connect to
- Port to connect to
- Handle for this simulator, to identify its
- location in the grid
- Whether to set CurrentSim to this new
- connection, use this if the avatar is moving in to this simulator
- URL of the capabilities server to use for
- this sim connection
- A Simulator object on success, otherwise null
-
-
-
- Connect to a simulator
-
- IP address and port to connect to
- Handle for this simulator, to identify its
- location in the grid
- Whether to set CurrentSim to this new
- connection, use this if the avatar is moving in to this simulator
- URL of the capabilities server to use for
- this sim connection
- A Simulator object on success, otherwise null
-
-
-
- Initiate a blocking logout request. This will return when the logout
- handshake has completed or when Settings.LOGOUT_TIMEOUT
- has expired and the network layer is manually shut down
-
-
-
-
- Initiate the logout process. Check if logout succeeded with the
- OnLogoutReply
event, and if this does not fire the
- Shutdown()
function needs to be manually called
-
-
-
-
- Close a connection to the given simulator
-
-
-
-
-
-
- Shutdown will disconnect all the sims except for the current sim
- first, and then kill the connection to CurrentSim. This should only
- be called if the logout process times out on RequestLogout
-
- Type of shutdown
-
-
-
- Shutdown will disconnect all the sims except for the current sim
- first, and then kill the connection to CurrentSim. This should only
- be called if the logout process times out on RequestLogout
-
- Type of shutdown
- Shutdown message
-
-
-
- Searches through the list of currently connected simulators to find
- one attached to the given IPEndPoint
-
- IPEndPoint of the Simulator to search for
- A Simulator reference on success, otherwise null
-
-
-
- Fire an event when an event queue connects for capabilities
-
- Simulator the event queue is attached to
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the LoginProgress Event
- A LoginProgressEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- Seed CAPS URL returned from the login server
-
-
- A list of packets obtained during the login process which
- networkmanager will log but not process
-
-
-
- Generate sane default values for a login request
-
- Account first name
- Account last name
- Account password
- Client application name
- Client application version
- A populated struct containing
- sane defaults
-
-
-
- Simplified login that takes the most common and required fields
-
- Account first name
- Account last name
- Account password
- Client application name
- Client application version
- Whether the login was successful or not. On failure the
- LoginErrorKey string will contain the error code and LoginMessage
- will contain a description of the error
-
-
-
- Simplified login that takes the most common fields along with a
- starting location URI, and can accept an MD5 string instead of a
- plaintext password
-
- Account first name
- Account last name
- Account password or MD5 hash of the password
- such as $1$1682a1e45e9f957dcdf0bb56eb43319c
- Client application name
- Starting location URI that can be built with
- StartLocation()
- Client application version
- Whether the login was successful or not. On failure the
- LoginErrorKey string will contain the error code and LoginMessage
- will contain a description of the error
-
-
-
- Login that takes a struct of all the values that will be passed to
- the login server
-
- The values that will be passed to the login
- server, all fields must be set even if they are String.Empty
- Whether the login was successful or not. On failure the
- LoginErrorKey string will contain the error code and LoginMessage
- will contain a description of the error
-
-
-
- Build a start location URI for passing to the Login function
-
- Name of the simulator to start in
- X coordinate to start at
- Y coordinate to start at
- Z coordinate to start at
- String with a URI that can be used to login to a specified
- location
-
-
-
- Handles response from XML-RPC login replies
-
-
-
-
- Handle response from LLSD login replies
-
-
-
-
-
-
-
- Get current OS
-
- Either "Win" or "Linux"
-
-
-
- Get clients default Mac Address
-
- A string containing the first found Mac Address
-
-
- Raised when the simulator sends us data containing
- ...
-
-
- Raised when the simulator sends us data containing
- ...
-
-
- Raised when the simulator sends us data containing
- ...
-
-
- Raised when the simulator sends us data containing
- ...
-
-
- Raised when the simulator sends us data containing
- ...
-
-
- Raised when the simulator sends us data containing
- ...
-
-
- Raised when the simulator sends us data containing
- ...
-
-
- Raised when the simulator sends us data containing
- ...
-
-
- Unique identifier associated with our connections to
- simulators
-
-
- The simulator that the logged in avatar is currently
- occupying
-
-
- Shows whether the network layer is logged in to the
- grid or not
-
-
- Number of packets in the incoming queue
-
-
- Number of packets in the outgoing queue
-
-
- Raised when the simulator sends us data containing
- ...
-
-
- Called when a reply is received from the login server, the
- login sequence will block until this event returns
-
-
- Current state of logging in
-
-
- Upon login failure, contains a short string key for the
- type of login error that occurred
-
-
- The raw XML-RPC reply from the login server, exactly as it
- was received (minus the HTTP header)
-
-
- During login this contains a descriptive version of
- LoginStatusCode. After a successful login this will contain the
- message of the day, and after a failed login a descriptive error
- message will be returned
-
-
-
- Explains why a simulator or the grid disconnected from us
-
-
-
- The client requested the logout or simulator disconnect
-
-
- The server notified us that it is disconnecting
-
-
- Either a socket was closed or network traffic timed out
-
-
- The last active simulator shut down
-
-
-
- Holds a simulator reference and a decoded packet, these structs are put in
- the packet inbox for event handling
-
-
-
- Reference to the simulator that this packet came from
-
-
- Packet that needs to be processed
-
-
-
- Holds a simulator reference and a serialized packet, these structs are put in
- the packet outbox for sending
-
-
-
- Reference to the simulator this packet is destined for
-
-
- Packet that needs to be sent
-
-
- Sequence number of the wrapped packet
-
-
- Number of times this packet has been resent
-
-
- Environment.TickCount when this packet was last sent over the wire
-
-
-
-
-
-
-
-
-
-
-
-
-
- Reads in a byte array of an Animation Asset created by the SecondLife(tm) client.
-
-
-
-
- Rotation Keyframe count (used internally)
-
-
-
-
- Position Keyframe count (used internally)
-
-
-
-
- Animation Priority
-
-
-
-
- The animation length in seconds.
-
-
-
-
- Expression set in the client. Null if [None] is selected
-
-
-
-
- The time in seconds to start the animation
-
-
-
-
- The time in seconds to end the animation
-
-
-
-
- Loop the animation
-
-
-
-
- Meta data. Ease in Seconds.
-
-
-
-
- Meta data. Ease out seconds.
-
-
-
-
- Meta Data for the Hand Pose
-
-
-
-
- Number of joints defined in the animation
-
-
-
-
- Contains an array of joints
-
-
-
-
- Searialize an animation asset into it's joints/keyframes/meta data
-
-
-
-
-
- Variable length strings seem to be null terminated in the animation asset.. but..
- use with caution, home grown.
- advances the index.
-
- The animation asset byte array
- The offset to start reading
- a string
-
-
-
- Read in a Joint from an animation asset byte array
- Variable length Joint fields, yay!
- Advances the index
-
- animation asset byte array
- Byte Offset of the start of the joint
- The Joint data serialized into the binBVHJoint structure
-
-
-
- Read Keyframes of a certain type
- advance i
-
- Animation Byte array
- Offset in the Byte Array. Will be advanced
- Number of Keyframes
- Scaling Min to pass to the Uint16ToFloat method
- Scaling Max to pass to the Uint16ToFloat method
-
-
-
-
- A Joint and it's associated meta data and keyframes
-
-
-
-
- Name of the Joint. Matches the avatar_skeleton.xml in client distros
-
-
-
-
- Joint Animation Override? Was the same as the Priority in testing..
-
-
-
-
- Array of Rotation Keyframes in order from earliest to latest
-
-
-
-
- Array of Position Keyframes in order from earliest to latest
- This seems to only be for the Pelvis?
-
-
-
-
- A Joint Keyframe. This is either a position or a rotation.
-
-
-
-
- Either a Vector3 position or a Vector3 Euler rotation
-
-
-
-
- Poses set in the animation metadata for the hands.
-
-
-
-
- Manager class for our own avatar
-
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the ChatFromSimulator event
- A ChatEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the ScriptDialog event
- A SctriptDialogEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the ScriptQuestion event
- A ScriptQuestionEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the LoadURL event
- A LoadUrlEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the MoneyBalance event
- A BalanceEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the MoneyBalanceReply event
- A MoneyBalanceReplyEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the IM event
- A InstantMessageEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the TeleportProgress event
- A TeleportEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the AgentDataReply event
- A AgentDataReplyEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the AnimationsChanged event
- A AnimationsChangedEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the MeanCollision event
- A MeanCollisionEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the RegionCrossed event
- A RegionCrossedEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the GroupChatJoined event
- A GroupChatJoinedEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the GroupChatLeft event
- A GroupChatLeftEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the AlertMessage event
- A AlertMessageEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the ScriptControlChange event
- A ScriptControlEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the CameraConstraint event
- A CameraConstraintEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the ScriptSensorReply event
- A ScriptSensorReplyEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the AvatarSitResponse event
- A AvatarSitResponseEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the ChatSessionMemberAdded event
- A ChatSessionMemberAddedEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the ChatSessionMemberLeft event
- A ChatSessionMemberLeftEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- Reference to the GridClient instance
-
-
- Used for movement and camera tracking
-
-
- Currently playing animations for the agent. Can be used to
- check the current movement status such as walking, hovering, aiming,
- etc. by checking against system animations found in the Animations class
-
-
- Dictionary containing current Group Chat sessions and members
-
-
-
- Constructor, setup callbacks for packets related to our avatar
-
- A reference to the Class
-
-
-
- Send a text message from the Agent to the Simulator
-
- A containing the message
- The channel to send the message on, 0 is the public channel. Channels above 0
- can be used however only scripts listening on the specified channel will see the message
- Denotes the type of message being sent, shout, whisper, etc.
-
-
-
- Request any instant messages sent while the client was offline to be resent.
-
-
-
-
- Send an Instant Message to another Avatar
-
- The recipients
- A containing the message to send
-
-
-
- Send an Instant Message to an existing group chat or conference chat
-
- The recipients
- A containing the message to send
- IM session ID (to differentiate between IM windows)
-
-
-
- Send an Instant Message
-
- The name this IM will show up as being from
- Key of Avatar
- Text message being sent
- IM session ID (to differentiate between IM windows)
- IDs of sessions for a conference
-
-
-
- Send an Instant Message
-
- The name this IM will show up as being from
- Key of Avatar
- Text message being sent
- IM session ID (to differentiate between IM windows)
- Type of instant message to send
- Whether to IM offline avatars as well
- Senders Position
- RegionID Sender is In
- Packed binary data that is specific to
- the dialog type
-
-
-
- Send an Instant Message to a group
-
- of the group to send message to
- Text Message being sent.
-
-
-
- Send an Instant Message to a group the agent is a member of
-
- The name this IM will show up as being from
- of the group to send message to
- Text message being sent
-
-
-
- Send a request to join a group chat session
-
- of Group to leave
-
-
-
- Exit a group chat session. This will stop further Group chat messages
- from being sent until session is rejoined.
-
- of Group chat session to leave
-
-
-
- Reply to script dialog questions.
-
- Channel initial request came on
- Index of button you're "clicking"
- Label of button you're "clicking"
- of Object that sent the dialog request
-
-
-
-
- Accept invite for to a chatterbox session
-
- of session to accept invite to
-
-
-
- Start a friends conference
-
- List of UUIDs to start a conference with
- the temportary session ID returned in the callback>
-
-
-
- Start a particle stream between an agent and an object
-
- Key of the source agent
- Key of the target object
-
- The type from the enum
- A unique for this effect
-
-
-
- Start a particle stream between an agent and an object
-
- Key of the source agent
- Key of the target object
- A representing the beams offset from the source
- A which sets the avatars lookat animation
- of the Effect
-
-
-
- Create a particle beam between an avatar and an primitive
-
- The ID of source avatar
- The ID of the target primitive
- global offset
- A object containing the combined red, green, blue and alpha
- color values of particle beam
- a float representing the duration the parcicle beam will last
- A Unique ID for the beam
-
-
-
-
- Create a particle swirl around a target position using a packet
-
- global offset
- A object containing the combined red, green, blue and alpha
- color values of particle beam
- a float representing the duration the parcicle beam will last
- A Unique ID for the beam
-
-
-
- Sends a request to sit on the specified object
-
- of the object to sit on
- Sit at offset
-
-
-
- Follows a call to to actually sit on the object
-
-
-
- Stands up from sitting on a prim or the ground
- true of AgentUpdate was sent
-
-
-
- Does a "ground sit" at the avatar's current position
-
-
-
-
- Starts or stops flying
-
- True to start flying, false to stop flying
-
-
-
- Starts or stops crouching
-
- True to start crouching, false to stop crouching
-
-
-
- Starts a jump (begin holding the jump key)
-
-
-
-
- Use the autopilot sim function to move the avatar to a new
- position. Uses double precision to get precise movements
-
- The z value is currently not handled properly by the simulator
- Global X coordinate to move to
- Global Y coordinate to move to
- Z coordinate to move to
-
-
-
- Use the autopilot sim function to move the avatar to a new position
-
- The z value is currently not handled properly by the simulator
- Integer value for the global X coordinate to move to
- Integer value for the global Y coordinate to move to
- Floating-point value for the Z coordinate to move to
-
-
-
- Use the autopilot sim function to move the avatar to a new position
-
- The z value is currently not handled properly by the simulator
- Integer value for the local X coordinate to move to
- Integer value for the local Y coordinate to move to
- Floating-point value for the Z coordinate to move to
-
-
- Macro to cancel autopilot sim function
- Not certain if this is how it is really done
- true if control flags were set and AgentUpdate was sent to the simulator
-
-
-
- Grabs an object
-
- an unsigned integer of the objects ID within the simulator
-
-
-
-
- Overload: Grab a simulated object
-
- an unsigned integer of the objects ID within the simulator
-
- The texture coordinates to grab
- The surface coordinates to grab
- The face of the position to grab
- The region coordinates of the position to grab
- The surface normal of the position to grab (A normal is a vector perpindicular to the surface)
- The surface binormal of the position to grab (A binormal is a vector tangen to the surface
- pointing along the U direction of the tangent space
-
-
-
- Drag an object
-
- of the object to drag
- Drag target in region coordinates
-
-
-
- Overload: Drag an object
-
- of the object to drag
- Drag target in region coordinates
-
- The texture coordinates to grab
- The surface coordinates to grab
- The face of the position to grab
- The region coordinates of the position to grab
- The surface normal of the position to grab (A normal is a vector perpindicular to the surface)
- The surface binormal of the position to grab (A binormal is a vector tangen to the surface
- pointing along the U direction of the tangent space
-
-
-
- Release a grabbed object
-
- The Objects Simulator Local ID
-
-
-
-
-
-
- Release a grabbed object
-
- The Objects Simulator Local ID
- The texture coordinates to grab
- The surface coordinates to grab
- The face of the position to grab
- The region coordinates of the position to grab
- The surface normal of the position to grab (A normal is a vector perpindicular to the surface)
- The surface binormal of the position to grab (A binormal is a vector tangen to the surface
- pointing along the U direction of the tangent space
-
-
-
- Touches an object
-
- an unsigned integer of the objects ID within the simulator
-
-
-
-
- Request the current L$ balance
-
-
-
-
- Give Money to destination Avatar
-
- UUID of the Target Avatar
- Amount in L$
-
-
-
- Give Money to destination Avatar
-
- UUID of the Target Avatar
- Amount in L$
- Description that will show up in the
- recipients transaction history
-
-
-
- Give L$ to an object
-
- object to give money to
- amount of L$ to give
- name of object
-
-
-
- Give L$ to a group
-
- group to give money to
- amount of L$ to give
-
-
-
- Give L$ to a group
-
- group to give money to
- amount of L$ to give
- description of transaction
-
-
-
- Pay texture/animation upload fee
-
-
-
-
- Pay texture/animation upload fee
-
- description of the transaction
-
-
-
- Give Money to destination Object or Avatar
-
- UUID of the Target Object/Avatar
- Amount in L$
- Reason (Optional normally)
- The type of transaction
- Transaction flags, mostly for identifying group
- transactions
-
-
-
- Plays a gesture
-
- Asset of the gesture
-
-
-
- Mark gesture active
-
- Inventory of the gesture
- Asset of the gesture
-
-
-
- Mark gesture inactive
-
- Inventory of the gesture
-
-
-
- Send an AgentAnimation packet that toggles a single animation on
-
- The of the animation to start playing
- Whether to ensure delivery of this packet or not
-
-
-
- Send an AgentAnimation packet that toggles a single animation off
-
- The of a
- currently playing animation to stop playing
- Whether to ensure delivery of this packet or not
-
-
-
- Send an AgentAnimation packet that will toggle animations on or off
-
- A list of animation s, and whether to
- turn that animation on or off
- Whether to ensure delivery of this packet or not
-
-
-
- Teleports agent to their stored home location
-
- true on successful teleport to home location
-
-
-
- Teleport agent to a landmark
-
- of the landmark to teleport agent to
- true on success, false on failure
-
-
-
- Attempt to look up a simulator name and teleport to the discovered
- destination
-
- Region name to look up
- Position to teleport to
- True if the lookup and teleport were successful, otherwise
- false
-
-
-
- Attempt to look up a simulator name and teleport to the discovered
- destination
-
- Region name to look up
- Position to teleport to
- Target to look at
- True if the lookup and teleport were successful, otherwise
- false
-
-
-
- Teleport agent to another region
-
- handle of region to teleport agent to
- position in destination sim to teleport to
- true on success, false on failure
- This call is blocking
-
-
-
- Teleport agent to another region
-
- handle of region to teleport agent to
- position in destination sim to teleport to
- direction in destination sim agent will look at
- true on success, false on failure
- This call is blocking
-
-
-
- Request teleport to a another simulator
-
- handle of region to teleport agent to
- position in destination sim to teleport to
-
-
-
- Request teleport to a another simulator
-
- handle of region to teleport agent to
- position in destination sim to teleport to
- direction in destination sim agent will look at
-
-
-
- Teleport agent to a landmark
-
- of the landmark to teleport agent to
-
-
-
- Send a teleport lure to another avatar with default "Join me in ..." invitation message
-
- target avatars to lure
-
-
-
- Send a teleport lure to another avatar with custom invitation message
-
- target avatars to lure
- custom message to send with invitation
-
-
-
- Respond to a teleport lure by either accepting it and initiating
- the teleport, or denying it
-
- of the avatar sending the lure
- true to accept the lure, false to decline it
-
-
-
- Update agent profile
-
- struct containing updated
- profile information
-
-
-
- Update agents profile interests
-
- selection of interests from struct
-
-
-
- Set the height and the width of the client window. This is used
- by the server to build a virtual camera frustum for our avatar
-
- New height of the viewer window
- New width of the viewer window
-
-
-
- Request the list of muted objects and avatars for this agent
-
-
-
-
- Sets home location to agents current position
-
- will fire an AlertMessage () with
- success or failure message
-
-
-
- Move an agent in to a simulator. This packet is the last packet
- needed to complete the transition in to a new simulator
-
- Object
-
-
-
- Reply to script permissions request
-
- Object
- of the itemID requesting permissions
- of the taskID requesting permissions
- list of permissions to allow
-
-
-
- Respond to a group invitation by either accepting or denying it
-
- UUID of the group (sent in the AgentID field of the invite message)
- IM Session ID from the group invitation message
- Accept the group invitation or deny it
-
-
-
- Requests script detection of objects and avatars
-
- name of the object/avatar to search for
- UUID of the object or avatar to search for
- Type of search from ScriptSensorTypeFlags
- range of scan (96 max?)
- the arc in radians to search within
- an user generated ID to correlate replies with
- Simulator to perform search in
-
-
-
- Create or update profile pick
-
- UUID of the pick to update, or random UUID to create a new pick
- Is this a top pick? (typically false)
- UUID of the parcel (UUID.Zero for the current parcel)
- Name of the pick
- Global position of the pick landmark
- UUID of the image displayed with the pick
- Long description of the pick
-
-
-
- Delete profile pick
-
- UUID of the pick to delete
-
-
-
- Create or update profile Classified
-
- UUID of the classified to update, or random UUID to create a new classified
- Defines what catagory the classified is in
- UUID of the image displayed with the classified
- Price that the classified will cost to place for a week
- Global position of the classified landmark
- Name of the classified
- Long description of the classified
- if true, auto renew classified after expiration
-
-
-
- Create or update profile Classified
-
- UUID of the classified to update, or random UUID to create a new classified
- Defines what catagory the classified is in
- UUID of the image displayed with the classified
- Price that the classified will cost to place for a week
- Name of the classified
- Long description of the classified
- if true, auto renew classified after expiration
-
-
-
- Delete a classified ad
-
- The classified ads ID
-
-
-
- Take an incoming ImprovedInstantMessage packet, auto-parse, and if
- OnInstantMessage is defined call that with the appropriate arguments
-
- The sender
- The EventArgs object containing the packet data
-
-
-
- Take an incoming Chat packet, auto-parse, and if OnChat is defined call
- that with the appropriate arguments.
-
- The sender
- The EventArgs object containing the packet data
-
-
-
- Used for parsing llDialogs
-
- The sender
- The EventArgs object containing the packet data
-
-
-
- Used for parsing llRequestPermissions dialogs
-
- The sender
- The EventArgs object containing the packet data
-
-
-
- Handles Script Control changes when Script with permissions releases or takes a control
-
- The sender
- The EventArgs object containing the packet data
-
-
-
- Used for parsing llLoadURL Dialogs
-
- The sender
- The EventArgs object containing the packet data
-
-
-
- Update client's Position, LookAt and region handle from incoming packet
-
- The sender
- The EventArgs object containing the packet data
- This occurs when after an avatar moves into a new sim
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
-
- Process TeleportFailed message sent via EventQueue, informs agent its last teleport has failed and why.
-
- The Message Key
- An IMessage object Deserialized from the recieved message event
- The simulator originating the event message
-
-
-
- Process TeleportFinish from Event Queue and pass it onto our TeleportHandler
-
- The message system key for this event
- IMessage object containing decoded data from OSD
- The simulator originating the event message
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
-
- Crossed region handler for message that comes across the EventQueue. Sent to an agent
- when the agent crosses a sim border into a new region.
-
- The message key
- the IMessage object containing the deserialized data sent from the simulator
- The which originated the packet
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
- This packet is now being sent via the EventQueue
-
-
-
- Group Chat event handler
-
- The capability Key
- IMessage object containing decoded data from OSD
-
-
-
-
- Response from request to join a group chat
-
-
- IMessage object containing decoded data from OSD
-
-
-
-
- Someone joined or left group chat
-
-
- IMessage object containing decoded data from OSD
-
-
-
-
- Handle a group chat Invitation
-
- Caps Key
- IMessage object containing decoded data from OSD
- Originating Simulator
-
-
-
- Moderate a chat session
-
- the of the session to moderate, for group chats this will be the groups UUID
- the of the avatar to moderate
- Either "voice" to moderate users voice, or "text" to moderate users text session
- true to moderate (silence user), false to allow avatar to speak
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Raised when a scripted object or agent within range sends a public message
-
-
- Raised when a scripted object sends a dialog box containing possible
- options an agent can respond to
-
-
- Raised when an object requests a change in the permissions an agent has permitted
-
-
- Raised when a script requests an agent open the specified URL
-
-
- Raised when an agents currency balance is updated
-
-
- Raised when a transaction occurs involving currency such as a land purchase
-
-
- Raised when an ImprovedInstantMessage packet is recieved from the simulator, this is used for everything from
- private messaging to friendship offers. The Dialog field defines what type of message has arrived
-
-
- Raised when an agent has requested a teleport to another location, or when responding to a lure. Raised multiple times
- for each teleport indicating the progress of the request
-
-
- Raised when a simulator sends agent specific information for our avatar.
-
-
- Raised when our agents animation playlist changes
-
-
- Raised when an object or avatar forcefully collides with our agent
-
-
- Raised when our agent crosses a region border into another region
-
-
- Raised when our agent succeeds or fails to join a group chat session
-
-
- Raised when our agent exits a group chat session
-
-
- Raised when a simulator sends an urgent message usually indication the recent failure of
- another action we have attempted to take such as an attempt to enter a parcel where we are denied access
-
-
- Raised when a script attempts to take or release specified controls for our agent
-
-
- Raised when the simulator detects our agent is trying to view something
- beyond its limits
-
-
- Raised when a script sensor reply is received from a simulator
-
-
- Raised in response to a request
-
-
- Raised when an avatar enters a group chat session we are participating in
-
-
- Raised when an agent exits a group chat session we are participating in
-
-
- Your (client) avatars
- "client", "agent", and "avatar" all represent the same thing
-
-
- Temporary assigned to this session, used for
- verifying our identity in packets
-
-
- Shared secret that is never sent over the wire
-
-
- Your (client) avatar ID, local to the current region/sim
-
-
- Where the avatar started at login. Can be "last", "home"
- or a login
-
-
- The access level of this agent, usually M or PG
-
-
- The CollisionPlane of Agent
-
-
- An representing the velocity of our agent
-
-
- An representing the acceleration of our agent
-
-
- A which specifies the angular speed, and axis about which an Avatar is rotating.
-
-
- Position avatar client will goto when login to 'home' or during
- teleport request to 'home' region.
-
-
- LookAt point saved/restored with HomePosition
-
-
- Avatar First Name (i.e. Philip)
-
-
- Avatar Last Name (i.e. Linden)
-
-
- Avatar Full Name (i.e. Philip Linden)
-
-
- Gets the health of the agent
-
-
- Gets the current balance of the agent
-
-
- Gets the local ID of the prim the agent is sitting on,
- zero if the avatar is not currently sitting
-
-
- Gets the of the agents active group.
-
-
- Gets the Agents powers in the currently active group
-
-
- Current status message for teleporting
-
-
- Current position of the agent as a relative offset from
- the simulator, or the parent object if we are sitting on something
-
-
- Current rotation of the agent as a relative rotation from
- the simulator, or the parent object if we are sitting on something
-
-
- Current position of the agent in the simulator
-
-
-
- A representing the agents current rotation
-
-
-
- Returns the global grid position of the avatar
-
-
-
- Agent movement and camera control
-
- Agent movement is controlled by setting specific
- After the control flags are set, An AgentUpdate is required to update the simulator of the specified flags
- This is most easily accomplished by setting one or more of the AgentMovement properties
-
- Movement of an avatar is always based on a compass direction, for example AtPos will move the
- agent from West to East or forward on the X Axis, AtNeg will of course move agent from
- East to West or backward on the X Axis, LeftPos will be South to North or forward on the Y Axis
- The Z axis is Up, finer grained control of movements can be done using the Nudge properties
-
-
-
- Agent camera controls
-
-
- Currently only used for hiding your group title
-
-
- Action state of the avatar, which can currently be
- typing and editing
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Timer for sending AgentUpdate packets
-
-
- Default constructor
-
-
-
- Send an AgentUpdate with the camera set at the current agent
- position and pointing towards the heading specified
-
- Camera rotation in radians
- Whether to send the AgentUpdate reliable
- or not
-
-
-
- Rotates the avatar body and camera toward a target position.
- This will also anchor the camera position on the avatar
-
- Region coordinates to turn toward
-
-
-
- Send new AgentUpdate packet to update our current camera
- position and rotation
-
-
-
-
- Send new AgentUpdate packet to update our current camera
- position and rotation
-
- Whether to require server acknowledgement
- of this packet
-
-
-
- Send new AgentUpdate packet to update our current camera
- position and rotation
-
- Whether to require server acknowledgement
- of this packet
- Simulator to send the update to
-
-
-
- Builds an AgentUpdate packet entirely from parameters. This
- will not touch the state of Self.Movement or
- Self.Movement.Camera in any way
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Move agent positive along the X axis
-
-
- Move agent negative along the X axis
-
-
- Move agent positive along the Y axis
-
-
- Move agent negative along the Y axis
-
-
- Move agent positive along the Z axis
-
-
- Move agent negative along the Z axis
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Causes simulator to make agent fly
-
-
- Stop movement
-
-
- Finish animation
-
-
- Stand up from a sit
-
-
- Tells simulator to sit agent on ground
-
-
- Place agent into mouselook mode
-
-
- Nudge agent positive along the X axis
-
-
- Nudge agent negative along the X axis
-
-
- Nudge agent positive along the Y axis
-
-
- Nudge agent negative along the Y axis
-
-
- Nudge agent positive along the Z axis
-
-
- Nudge agent negative along the Z axis
-
-
-
-
-
-
-
-
- Tell simulator to mark agent as away
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Returns "always run" value, or changes it by sending a SetAlwaysRunPacket
-
-
-
- The current value of the agent control flags
-
-
- Gets or sets the interval in milliseconds at which
- AgentUpdate packets are sent to the current simulator. Setting
- this to a non-zero value will also enable the packet sending if
- it was previously off, and setting it to zero will disable
-
-
- Gets or sets whether AgentUpdate packets are sent to
- the current simulator
-
-
- Reset movement controls every time we send an update
-
-
-
- Camera controls for the agent, mostly a thin wrapper around
- CoordinateFrame. This class is only responsible for state
- tracking and math, it does not send any packets
-
-
-
-
-
-
- The camera is a local frame of reference inside of
- the larger grid space. This is where the math happens
-
-
-
- Default constructor
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Used to specify movement actions for your agent
-
-
-
- Empty flag
-
-
- Move Forward (SL Keybinding: W/Up Arrow)
-
-
- Move Backward (SL Keybinding: S/Down Arrow)
-
-
- Move Left (SL Keybinding: Shift-(A/Left Arrow))
-
-
- Move Right (SL Keybinding: Shift-(D/Right Arrow))
-
-
- Not Flying: Jump/Flying: Move Up (SL Keybinding: E)
-
-
- Not Flying: Croutch/Flying: Move Down (SL Keybinding: C)
-
-
- Unused
-
-
- Unused
-
-
- Unused
-
-
- Unused
-
-
- ORed with AGENT_CONTROL_AT_* if the keyboard is being used
-
-
- ORed with AGENT_CONTROL_LEFT_* if the keyboard is being used
-
-
- ORed with AGENT_CONTROL_UP_* if the keyboard is being used
-
-
- Fly
-
-
-
-
-
- Finish our current animation
-
-
- Stand up from the ground or a prim seat
-
-
- Sit on the ground at our current location
-
-
- Whether mouselook is currently enabled
-
-
- Legacy, used if a key was pressed for less than a certain amount of time
-
-
- Legacy, used if a key was pressed for less than a certain amount of time
-
-
- Legacy, used if a key was pressed for less than a certain amount of time
-
-
- Legacy, used if a key was pressed for less than a certain amount of time
-
-
- Legacy, used if a key was pressed for less than a certain amount of time
-
-
- Legacy, used if a key was pressed for less than a certain amount of time
-
-
-
-
-
-
-
-
- Set when the avatar is idled or set to away. Note that the away animation is
- activated separately from setting this flag
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Represents a single Voice Session to the Vivox service.
-
-
-
-
- Close this session.
-
-
-
-
- Look up an existing Participants in this session
-
-
-
-
-
- Positional vector of the users position
-
-
- Velocity vector of the position
-
-
- At Orientation (X axis) of the position
-
-
- Up Orientation (Y axis) of the position
-
-
- Left Orientation (Z axis) of the position
-
-
-
- The type of bump-mapping applied to a face
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- The level of shininess applied to a face
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- The texture mapping style used for a face
-
-
-
-
-
-
-
-
-
-
- Flags in the TextureEntry block that describe which properties are
- set
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Abstract base for rendering plugins
-
-
-
-
- Generates a basic mesh structure from a primitive
-
- Primitive to generate the mesh from
- Level of detail to generate the mesh at
- The generated mesh
-
-
-
- Generates a a series of faces, each face containing a mesh and
- metadata
-
- Primitive to generate the mesh from
- Level of detail to generate the mesh at
- The generated mesh
-
-
-
- Apply texture coordinate modifications from a
- to a list of vertices
-
- Vertex list to modify texture coordinates for
- Center-point of the face
- Face texture parameters
-
-
-
- Temporary code to produce a tar archive in tar v7 format
-
-
-
-
- Binary writer for the underlying stream
-
-
-
-
- Write a directory entry to the tar archive. We can only handle one path level right now!
-
-
-
-
-
- Write a file to the tar archive
-
-
-
-
-
-
- Write a file to the tar archive
-
-
-
-
-
-
- Finish writing the raw tar archive data to a stream. The stream will be closed on completion.
-
-
-
-
- Write a particular entry
-
-
-
-
-
-
-
- Temporary code to do the bare minimum required to read a tar archive for our purposes
-
-
-
-
- Binary reader for the underlying stream
-
-
-
-
- Used to trim off null chars
-
-
-
-
- Used to trim off space chars
-
-
-
-
- Generate a tar reader which reads from the given stream.
-
-
-
-
-
- Read the next entry in the tar file.
-
-
-
- the data for the entry. Returns null if there are no more entries
-
-
-
- Read the next 512 byte chunk of data as a tar header.
-
- A tar header struct. null if we have reached the end of the archive.
-
-
-
- Read data following a header
-
-
-
-
-
-
- Convert octal bytes to a decimal representation
-
-
-
-
-
-
-
-
- Simulator (region) properties
-
-
-
- No flags set
-
-
- Agents can take damage and be killed
-
-
- Landmarks can be created here
-
-
- Home position can be set in this sim
-
-
- Home position is reset when an agent teleports away
-
-
- Sun does not move
-
-
- No object, land, etc. taxes
-
-
- Disable heightmap alterations (agents can still plant
- foliage)
-
-
- Land cannot be released, sold, or purchased
-
-
- All content is wiped nightly
-
-
- Unknown: Related to the availability of an overview world map tile.(Think mainland images when zoomed out.)
-
-
- Unknown: Related to region debug flags. Possibly to skip processing of agent interaction with world.
-
-
- Region does not update agent prim interest lists. Internal debugging option.
-
-
- No collision detection for non-agent objects
-
-
- No scripts are ran
-
-
- All physics processing is turned off
-
-
- Region can be seen from other regions on world map. (Legacy world map option?)
-
-
- Region can be seen from mainland on world map. (Legacy world map option?)
-
-
- Agents not explicitly on the access list can visit the region.
-
-
- Traffic calculations are not run across entire region, overrides parcel settings.
-
-
- Flight is disabled (not currently enforced by the sim)
-
-
- Allow direct (p2p) teleporting
-
-
- Estate owner has temporarily disabled scripting
-
-
- Restricts the usage of the LSL llPushObject function, applies to whole region.
-
-
- Deny agents with no payment info on file
-
-
- Deny agents with payment info on file
-
-
- Deny agents who have made a monetary transaction
-
-
- Parcels within the region may be joined or divided by anyone, not just estate owners/managers.
-
-
- Abuse reports sent from within this region are sent to the estate owner defined email.
-
-
- Region is Voice Enabled
-
-
- Removes the ability from parcel owners to set their parcels to show in search.
-
-
- Deny agents who have not been age verified from entering the region.
-
-
-
- Access level for a simulator
-
-
-
- Minimum access level, no additional checks
-
-
- Trial accounts allowed
-
-
- PG rating
-
-
- Mature rating
-
-
- Simulator is offline
-
-
- Simulator does not exist
-
-
-
-
-
-
-
-
-
-
-
-
-
- Initialize the UDP packet handler in server mode
-
- Port to listening for incoming UDP packets on
-
-
-
- Initialize the UDP packet handler in client mode
-
- Remote UDP server to connect to
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- A public reference to the client that this Simulator object
- is attached to
-
-
- A Unique Cache identifier for this simulator
-
-
- The capabilities for this simulator
-
-
-
-
-
- The current version of software this simulator is running
-
-
-
-
-
- A 64x64 grid of parcel coloring values. The values stored
- in this array are of the type
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- true if your agent has Estate Manager rights on this region
-
-
-
-
-
-
-
-
-
-
-
- Statistics information for this simulator and the
- connection to the simulator, calculated by the simulator itself
- and the library
-
-
- The regions Unique ID
-
-
- The physical data center the simulator is located
- Known values are:
-
- - Dallas
- - Chandler
- - SF
-
-
-
-
- The CPU Class of the simulator
- Most full mainland/estate sims appear to be 5,
- Homesteads and Openspace appear to be 501
-
-
- The number of regions sharing the same CPU as this one
- "Full Sims" appear to be 1, Homesteads appear to be 4
-
-
- The billing product name
- Known values are:
-
- - Mainland / Full Region (Sku: 023)
- - Estate / Full Region (Sku: 024)
- - Estate / Openspace (Sku: 027)
- - Estate / Homestead (Sku: 029)
- - Mainland / Homestead (Sku: 129) (Linden Owned)
- - Mainland / Linden Homes (Sku: 131)
-
-
-
-
- The billing product SKU
- Known values are:
-
- - 023 Mainland / Full Region
- - 024 Estate / Full Region
- - 027 Estate / Openspace
- - 029 Estate / Homestead
- - 129 Mainland / Homestead (Linden Owned)
- - 131 Linden Homes / Full Region
-
-
-
-
-
- A thread-safe dictionary containing avatars in a simulator
-
-
-
-
- A thread-safe dictionary containing primitives in a simulator
-
-
-
- The current sequence number for packets sent to this
- simulator. Must be Interlocked before modifying. Only
- useful for applications manipulating sequence numbers
-
-
-
- Provides access to an internal thread-safe dictionary containing parcel
- information found in this simulator
-
-
-
-
- Checks simulator parcel map to make sure it has downloaded all data successfully
-
- true if map is full (contains no 0's)
-
-
- Used internally to track sim disconnections
-
-
- Event that is triggered when the simulator successfully
- establishes a connection
-
-
- Whether this sim is currently connected or not. Hooked up
- to the property Connected
-
-
- Coarse locations of avatars in this simulator
-
-
- AvatarPositions key representing TrackAgent target
-
-
- Sequence numbers of packets we've received
- (for duplicate checking)
-
-
- Packets we sent out that need ACKs from the simulator
-
-
- Sequence number for pause/resume
-
-
-
-
-
- Reference to the GridClient object
- IPEndPoint of the simulator
- handle of the simulator
-
-
-
- Called when this Simulator object is being destroyed
-
-
-
-
- Attempt to connect to this simulator
-
- Whether to move our agent in to this sim or not
- True if the connection succeeded or connection status is
- unknown, false if there was a failure
-
-
-
- Disconnect from this simulator
-
-
-
-
- Instructs the simulator to stop sending update (and possibly other) packets
-
-
-
-
- Instructs the simulator to resume sending update packets (unpause)
-
-
-
-
- Sends a packet
-
- Packet to be sent
-
-
-
-
-
-
-
-
- Returns Simulator Name as a String
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Sends out pending acknowledgements
-
-
-
-
- Resend unacknowledged packets
-
-
-
-
- Provides access to an internal thread-safe multidimensional array containing a x,y grid mapped
- to each 64x64 parcel's LocalID.
-
-
-
- The IP address and port of the server
-
-
- Whether there is a working connection to the simulator or
- not
-
-
- Coarse locations of avatars in this simulator
-
-
- AvatarPositions key representing TrackAgent target
-
-
-
- Simulator Statistics
-
-
-
- Total number of packets sent by this simulator to this agent
-
-
- Total number of packets received by this simulator to this agent
-
-
- Total number of bytes sent by this simulator to this agent
-
-
- Total number of bytes received by this simulator to this agent
-
-
- Time in seconds agent has been connected to simulator
-
-
- Total number of packets that have been resent
-
-
- Total number of resent packets recieved
-
-
- Total number of pings sent to this simulator by this agent
-
-
- Total number of ping replies sent to this agent by this simulator
-
-
-
- Incoming bytes per second
-
- It would be nice to have this claculated on the fly, but
- this is far, far easier
-
-
-
- Outgoing bytes per second
-
- It would be nice to have this claculated on the fly, but
- this is far, far easier
-
-
- Time last ping was sent
-
-
- ID of last Ping sent
-
-
-
-
-
-
-
-
- Current time dilation of this simulator
-
-
- Current Frames per second of simulator
-
-
- Current Physics frames per second of simulator
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Total number of objects Simulator is simulating
-
-
- Total number of Active (Scripted) objects running
-
-
- Number of agents currently in this simulator
-
-
- Number of agents in neighbor simulators
-
-
- Number of Active scripts running in this simulator
-
-
-
-
-
-
-
-
-
-
-
- Number of downloads pending
-
-
- Number of uploads pending
-
-
-
-
-
-
-
-
- Number of local uploads pending
-
-
- Unacknowledged bytes in queue
-
-
-
-
-
-
-
- No report
-
-
- Unknown report type
-
-
- Bug report
-
-
- Complaint report
-
-
- Customer service report
-
-
-
- Bitflag field for ObjectUpdateCompressed data blocks, describing
- which options are present for each object
-
-
-
- Unknown
-
-
- Whether the object has a TreeSpecies
-
-
- Whether the object has floating text ala llSetText
-
-
- Whether the object has an active particle system
-
-
- Whether the object has sound attached to it
-
-
- Whether the object is attached to a root object or not
-
-
- Whether the object has texture animation settings
-
-
- Whether the object has an angular velocity
-
-
- Whether the object has a name value pairs string
-
-
- Whether the object has a Media URL set
-
-
-
- Specific Flags for MultipleObjectUpdate requests
-
-
-
- None
-
-
- Change position of prims
-
-
- Change rotation of prims
-
-
- Change size of prims
-
-
- Perform operation on link set
-
-
- Scale prims uniformly, same as selecing ctrl+shift in the
- viewer. Used in conjunction with Scale
-
-
-
- Special values in PayPriceReply. If the price is not one of these
- literal value of the price should be use
-
-
-
-
- Indicates that this pay option should be hidden
-
-
-
-
- Indicates that this pay option should have the default value
-
-
-
-
- Contains the variables sent in an object update packet for objects.
- Used to track position and movement of prims and avatars
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Handles all network traffic related to prims and avatar positions and
- movement.
-
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the ObjectUpdate Event
- A ObjectUpdateEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the ObjectProperties Event
- A ObjectPropertiesEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the ObjectPropertiesUpdated Event
- A ObjectPropertiesUpdatedEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the ObjectPropertiesFamily Event
- A ObjectPropertiesFamilyEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the AvatarUpdate Event
- A AvatarUpdateEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the TerseObjectUpdate Event
- A TerseObjectUpdateEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the ObjectDataBlockUpdate Event
- A ObjectDataBlockUpdateEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the KillObject Event
- A KillObjectEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the AvatarSitChanged Event
- A AvatarSitChangedEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the PayPriceReply Event
- A PayPriceReplyEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- Reference to the GridClient object
-
-
- Does periodic dead reckoning calculation to convert
- velocity and acceleration to new positions for objects
-
-
-
- Construct a new instance of the ObjectManager class
-
- A reference to the instance
-
-
-
- Request information for a single object from a
- you are currently connected to
-
- The the object is located
- The Local ID of the object
-
-
-
- Request information for multiple objects contained in
- the same simulator
-
- The the objects are located
- An array containing the Local IDs of the objects
-
-
-
- Attempt to purchase an original object, a copy, or the contents of
- an object
-
- The the object is located
- The Local ID of the object
- Whether the original, a copy, or the object
- contents are on sale. This is used for verification, if the this
- sale type is not valid for the object the purchase will fail
- Price of the object. This is used for
- verification, if it does not match the actual price the purchase
- will fail
- Group ID that will be associated with the new
- purchase
- Inventory folder UUID where the object or objects
- purchased should be placed
-
-
- BuyObject(Client.Network.CurrentSim, 500, SaleType.Copy,
- 100, UUID.Zero, Client.Self.InventoryRootFolderUUID);
-
-
-
-
-
- Request prices that should be displayed in pay dialog. This will triggger the simulator
- to send us back a PayPriceReply which can be handled by OnPayPriceReply event
-
- The the object is located
- The ID of the object
- The result is raised in the event
-
-
-
- Select a single object. This will cause the to send us
- an which will raise the event
-
- The the object is located
- The Local ID of the object
-
-
-
-
- Select a single object. This will cause the to send us
- an which will raise the event
-
- The the object is located
- The Local ID of the object
- if true, a call to is
- made immediately following the request
-
-
-
-
- Select multiple objects. This will cause the to send us
- an which will raise the event
-
- The the objects are located
- An array containing the Local IDs of the objects
- Should objects be deselected immediately after selection
-
-
-
-
- Select multiple objects. This will cause the to send us
- an which will raise the event
-
- The the objects are located
- An array containing the Local IDs of the objects
-
-
-
-
- Update the properties of an object
-
- The the object is located
- The Local ID of the object
- true to turn the objects physical property on
- true to turn the objects temporary property on
- true to turn the objects phantom property on
- true to turn the objects cast shadows property on
-
-
-
- Sets the sale properties of a single object
-
- The the object is located
- The Local ID of the object
- One of the options from the enum
- The price of the object
-
-
-
- Sets the sale properties of multiple objects
-
- The the objects are located
- An array containing the Local IDs of the objects
- One of the options from the enum
- The price of the object
-
-
-
- Deselect a single object
-
- The the object is located
- The Local ID of the object
-
-
-
- Deselect multiple objects.
-
- The the objects are located
- An array containing the Local IDs of the objects
-
-
-
- Perform a click action on an object
-
- The the object is located
- The Local ID of the object
-
-
-
- Perform a click action (Grab) on a single object
-
- The the object is located
- The Local ID of the object
- The texture coordinates to touch
- The surface coordinates to touch
- The face of the position to touch
- The region coordinates of the position to touch
- The surface normal of the position to touch (A normal is a vector perpindicular to the surface)
- The surface binormal of the position to touch (A binormal is a vector tangen to the surface
- pointing along the U direction of the tangent space
-
-
-
- Create (rez) a new prim object in a simulator
-
- A reference to the object to place the object in
- Data describing the prim object to rez
- Group ID that this prim will be set to, or UUID.Zero if you
- do not want the object to be associated with a specific group
- An approximation of the position at which to rez the prim
- Scale vector to size this prim
- Rotation quaternion to rotate this prim
- Due to the way client prim rezzing is done on the server,
- the requested position for an object is only close to where the prim
- actually ends up. If you desire exact placement you'll need to
- follow up by moving the object after it has been created. This
- function will not set textures, light and flexible data, or other
- extended primitive properties
-
-
-
- Create (rez) a new prim object in a simulator
-
- A reference to the object to place the object in
- Data describing the prim object to rez
- Group ID that this prim will be set to, or UUID.Zero if you
- do not want the object to be associated with a specific group
- An approximation of the position at which to rez the prim
- Scale vector to size this prim
- Rotation quaternion to rotate this prim
- Specify the
- Due to the way client prim rezzing is done on the server,
- the requested position for an object is only close to where the prim
- actually ends up. If you desire exact placement you'll need to
- follow up by moving the object after it has been created. This
- function will not set textures, light and flexible data, or other
- extended primitive properties
-
-
-
- Rez a Linden tree
-
- A reference to the object where the object resides
- The size of the tree
- The rotation of the tree
- The position of the tree
- The Type of tree
- The of the group to set the tree to,
- or UUID.Zero if no group is to be set
- true to use the "new" Linden trees, false to use the old
-
-
-
- Rez grass and ground cover
-
- A reference to the object where the object resides
- The size of the grass
- The rotation of the grass
- The position of the grass
- The type of grass from the enum
- The of the group to set the tree to,
- or UUID.Zero if no group is to be set
-
-
-
- Set the textures to apply to the faces of an object
-
- A reference to the object where the object resides
- The objects ID which is local to the simulator the object is in
- The texture data to apply
-
-
-
- Set the textures to apply to the faces of an object
-
- A reference to the object where the object resides
- The objects ID which is local to the simulator the object is in
- The texture data to apply
- A media URL (not used)
-
-
-
- Set the Light data on an object
-
- A reference to the object where the object resides
- The objects ID which is local to the simulator the object is in
- A object containing the data to set
-
-
-
- Set the flexible data on an object
-
- A reference to the object where the object resides
- The objects ID which is local to the simulator the object is in
- A object containing the data to set
-
-
-
- Set the sculptie texture and data on an object
-
- A reference to the object where the object resides
- The objects ID which is local to the simulator the object is in
- A object containing the data to set
-
-
-
- Unset additional primitive parameters on an object
-
- A reference to the object where the object resides
- The objects ID which is local to the simulator the object is in
- The extra parameters to set
-
-
-
- Link multiple prims into a linkset
-
- A reference to the object where the objects reside
- An array which contains the IDs of the objects to link
- The last object in the array will be the root object of the linkset TODO: Is this true?
-
-
-
- Change the rotation of an object
-
- A reference to the object where the object resides
- The objects ID which is local to the simulator the object is in
- The new rotation of the object
-
-
-
- Set the name of an object
-
- A reference to the object where the object resides
- The objects ID which is local to the simulator the object is in
- A string containing the new name of the object
-
-
-
- Set the name of multiple objects
-
- A reference to the object where the objects reside
- An array which contains the IDs of the objects to change the name of
- An array which contains the new names of the objects
-
-
-
- Set the description of an object
-
- A reference to the object where the object resides
- The objects ID which is local to the simulator the object is in
- A string containing the new description of the object
-
-
-
- Set the descriptions of multiple objects
-
- A reference to the object where the objects reside
- An array which contains the IDs of the objects to change the description of
- An array which contains the new descriptions of the objects
-
-
-
- Attach an object to this avatar
-
- A reference to the object where the object resides
- The objects ID which is local to the simulator the object is in
- The point on the avatar the object will be attached
- The rotation of the attached object
-
-
-
- Drop an attached object from this avatar
-
- A reference to the
- object where the objects reside. This will always be the simulator the avatar is currently in
-
- The object's ID which is local to the simulator the object is in
-
-
-
- Detach an object from yourself
-
- A reference to the
- object where the objects reside
-
- This will always be the simulator the avatar is currently in
-
- An array which contains the IDs of the objects to detach
-
-
-
- Change the position of an object, Will change position of entire linkset
-
- A reference to the object where the object resides
- The objects ID which is local to the simulator the object is in
- The new position of the object
-
-
-
- Change the position of an object
-
- A reference to the object where the object resides
- The objects ID which is local to the simulator the object is in
- The new position of the object
- if true, will change position of (this) child prim only, not entire linkset
-
-
-
- Change the Scale (size) of an object
-
- A reference to the object where the object resides
- The objects ID which is local to the simulator the object is in
- The new scale of the object
- If true, will change scale of this prim only, not entire linkset
- True to resize prims uniformly
-
-
-
- Change the Rotation of an object that is either a child or a whole linkset
-
- A reference to the object where the object resides
- The objects ID which is local to the simulator the object is in
- The new scale of the object
- If true, will change rotation of this prim only, not entire linkset
-
-
-
- Send a Multiple Object Update packet to change the size, scale or rotation of a primitive
-
- A reference to the object where the object resides
- The objects ID which is local to the simulator the object is in
- The new rotation, size, or position of the target object
- The flags from the Enum
-
-
-
- Deed an object (prim) to a group, Object must be shared with group which
- can be accomplished with SetPermissions()
-
- A reference to the object where the object resides
- The objects ID which is local to the simulator the object is in
- The of the group to deed the object to
-
-
-
- Deed multiple objects (prims) to a group, Objects must be shared with group which
- can be accomplished with SetPermissions()
-
- A reference to the object where the object resides
- An array which contains the IDs of the objects to deed
- The of the group to deed the object to
-
-
-
- Set the permissions on multiple objects
-
- A reference to the object where the objects reside
- An array which contains the IDs of the objects to set the permissions on
- The new Who mask to set
- The new Permissions mark to set
- TODO: What does this do?
-
-
-
- Request additional properties for an object
-
- A reference to the object where the object resides
-
-
-
-
- Request additional properties for an object
-
- A reference to the object where the object resides
- Absolute UUID of the object
- Whether to require server acknowledgement of this request
-
-
-
- Set the ownership of a list of objects to the specified group
-
- A reference to the object where the objects reside
- An array which contains the IDs of the objects to set the group id on
- The Groups ID
-
-
-
- Update current URL of the previously set prim media
-
- UUID of the prim
- Set current URL to this
- Prim face number
- Simulator in which prim is located
-
-
-
- Set object media
-
- UUID of the prim
- Array the length of prims number of faces. Null on face indexes where there is
- no media, on faces which contain the media
- Simulatior in which prim is located
-
-
-
- Retrieve information about object media
-
- UUID of the primitive
- Simulator where prim is located
- Call this callback when done
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
-
- A terse object update, used when a transformation matrix or
- velocity/acceleration for an object changes but nothing else
- (scale/position/rotation/acceleration/velocity)
-
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
-
- Setup construction data for a basic primitive shape
-
- Primitive shape to construct
- Construction data that can be plugged into a
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Set the Shape data of an object
-
- A reference to the object where the object resides
- The objects ID which is local to the simulator the object is in
- Data describing the prim shape
-
-
-
- Set the Material data of an object
-
- A reference to the object where the object resides
- The objects ID which is local to the simulator the object is in
- The new material of the object
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Raised when the simulator sends us data containing
- A , Foliage or Attachment
-
-
-
-
- Raised when the simulator sends us data containing
- additional information
-
-
-
-
- Raised when the simulator sends us data containing
- Primitive.ObjectProperties for an object we are currently tracking
-
-
- Raised when the simulator sends us data containing
- additional and details
-
-
-
- Raised when the simulator sends us data containing
- updated information for an
-
-
- Raised when the simulator sends us data containing
- and movement changes
-
-
- Raised when the simulator sends us data containing
- updates to an Objects DataBlock
-
-
- Raised when the simulator informs us an
- or is no longer within view
-
-
- Raised when the simulator sends us data containing
- updated sit information for our
-
-
- Raised when the simulator sends us data containing
- purchase price information for a
-
-
-
- Callback for getting object media data via CAP
-
- Indicates if the operation was succesfull
- Object media version string
- Array indexed on prim face of media entry data
-
-
- Provides data for the event
- The event occurs when the simulator sends
- an containing a Primitive, Foliage or Attachment data
- Note 1: The event will not be raised when the object is an Avatar
- Note 2: It is possible for the to be
- raised twice for the same object if for example the primitive moved to a new simulator, then returned to the current simulator or
- if an Avatar crosses the border into a new simulator and returns to the current simulator
-
-
- The following code example uses the , , and
- properties to display new Primitives and Attachments on the window.
-
- // Subscribe to the event that gives us prim and foliage information
- Client.Objects.ObjectUpdate += Objects_ObjectUpdate;
-
-
- private void Objects_ObjectUpdate(object sender, PrimEventArgs e)
- {
- Console.WriteLine("Primitive {0} {1} in {2} is an attachment {3}", e.Prim.ID, e.Prim.LocalID, e.Simulator.Name, e.IsAttachment);
- }
-
-
-
-
-
-
-
-
- Construct a new instance of the PrimEventArgs class
-
- The simulator the object originated from
- The Primitive
- The simulator time dilation
- The prim was not in the dictionary before this update
- true if the primitive represents an attachment to an agent
-
-
- Get the simulator the originated from
-
-
- Get the details
-
-
- true if the did not exist in the dictionary before this update (always true if object tracking has been disabled)
-
-
- true if the is attached to an
-
-
- Get the simulator Time Dilation
-
-
- Provides data for the event
- The event occurs when the simulator sends
- an containing Avatar data
- Note 1: The event will not be raised when the object is an Avatar
- Note 2: It is possible for the to be
- raised twice for the same avatar if for example the avatar moved to a new simulator, then returned to the current simulator
-
-
- The following code example uses the property to make a request for the top picks
- using the method in the class to display the names
- of our own agents picks listings on the window.
-
- // subscribe to the AvatarUpdate event to get our information
- Client.Objects.AvatarUpdate += Objects_AvatarUpdate;
- Client.Avatars.AvatarPicksReply += Avatars_AvatarPicksReply;
-
- private void Objects_AvatarUpdate(object sender, AvatarUpdateEventArgs e)
- {
- // we only want our own data
- if (e.Avatar.LocalID == Client.Self.LocalID)
- {
- // Unsubscribe from the avatar update event to prevent a loop
- // where we continually request the picks every time we get an update for ourselves
- Client.Objects.AvatarUpdate -= Objects_AvatarUpdate;
- // make the top picks request through AvatarManager
- Client.Avatars.RequestAvatarPicks(e.Avatar.ID);
- }
- }
-
- private void Avatars_AvatarPicksReply(object sender, AvatarPicksReplyEventArgs e)
- {
- // we'll unsubscribe from the AvatarPicksReply event since we now have the data
- // we were looking for
- Client.Avatars.AvatarPicksReply -= Avatars_AvatarPicksReply;
- // loop through the dictionary and extract the names of the top picks from our profile
- foreach (var pickName in e.Picks.Values)
- {
- Console.WriteLine(pickName);
- }
- }
-
-
-
-
-
-
-
- Construct a new instance of the AvatarUpdateEventArgs class
-
- The simulator the packet originated from
- The data
- The simulator time dilation
- The avatar was not in the dictionary before this update
-
-
- Get the simulator the object originated from
-
-
- Get the data
-
-
- Get the simulator time dilation
-
-
- true if the did not exist in the dictionary before this update (always true if avatar tracking has been disabled)
-
-
- Provides additional primitive data for the event
- The event occurs when the simulator sends
- an containing additional details for a Primitive, Foliage data or Attachment data
- The event is also raised when a request is
- made.
-
-
- The following code example uses the , and
-
- properties to display new attachments and send a request for additional properties containing the name of the
- attachment then display it on the window.
-
- // Subscribe to the event that provides additional primitive details
- Client.Objects.ObjectProperties += Objects_ObjectProperties;
-
- // handle the properties data that arrives
- private void Objects_ObjectProperties(object sender, ObjectPropertiesEventArgs e)
- {
- Console.WriteLine("Primitive Properties: {0} Name is {1}", e.Properties.ObjectID, e.Properties.Name);
- }
-
-
-
-
-
- Construct a new instance of the ObjectPropertiesEventArgs class
-
- The simulator the object is located
- The primitive Properties
-
-
- Get the simulator the object is located
-
-
- Get the primitive properties
-
-
- Provides additional primitive data for the event
- The event occurs when the simulator sends
- an containing additional details for a Primitive or Foliage data that is currently
- being tracked in the dictionary
- The event is also raised when a request is
- made and is enabled
-
-
-
-
- Construct a new instance of the ObjectPropertiesUpdatedEvenrArgs class
-
- The simulator the object is located
- The Primitive
- The primitive Properties
-
-
- Get the simulator the object is located
-
-
- Get the primitive details
-
-
- Get the primitive properties
-
-
- Provides additional primitive data, permissions and sale info for the event
- The event occurs when the simulator sends
- an containing additional details for a Primitive, Foliage data or Attachment. This includes
- Permissions, Sale info, and other basic details on an object
- The event is also raised when a request is
- made, the viewer equivalent is hovering the mouse cursor over an object
-
-
-
- Get the simulator the object is located
-
-
-
-
-
-
-
-
- Provides primitive data containing updated location, velocity, rotation, textures for the event
- The event occurs when the simulator sends updated location, velocity, rotation, etc
-
-
-
- Get the simulator the object is located
-
-
- Get the primitive details
-
-
-
-
-
-
-
-
-
-
-
-
-
- Get the simulator the object is located
-
-
- Get the primitive details
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Provides notification when an Avatar, Object or Attachment is DeRezzed or moves out of the avatars view for the
- event
-
-
- Get the simulator the object is located
-
-
- The LocalID of the object
-
-
-
- Provides updates sit position data
-
-
-
- Get the simulator the object is located
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Get the simulator the object is located
-
-
-
-
-
-
-
-
-
-
-
-
- Indicates if the operation was successful
-
-
-
-
- Media version string
-
-
-
-
- Array of media entries indexed by face number
-
-
-
-
- Singleton logging class for the entire library
-
-
-
- log4net logging engine
-
-
-
- Default constructor
-
-
-
-
- Send a log message to the logging engine
-
- The log message
- The severity of the log entry
-
-
-
- Send a log message to the logging engine
-
- The log message
- The severity of the log entry
- Instance of the client
-
-
-
- Send a log message to the logging engine
-
- The log message
- The severity of the log entry
- Exception that was raised
-
-
-
- Send a log message to the logging engine
-
- The log message
- The severity of the log entry
- Instance of the client
- Exception that was raised
-
-
-
- If the library is compiled with DEBUG defined, an event will be
- fired if an OnLogMessage
handler is registered and the
- message will be sent to the logging engine
-
- The message to log at the DEBUG level to the
- current logging engine
-
-
-
- If the library is compiled with DEBUG defined and
- GridClient.Settings.DEBUG
is true, an event will be
- fired if an OnLogMessage
handler is registered and the
- message will be sent to the logging engine
-
- The message to log at the DEBUG level to the
- current logging engine
- Instance of the client
-
-
- Triggered whenever a message is logged. If this is left
- null, log messages will go to the console
-
-
-
- Callback used for client apps to receive log messages from
- the library
-
- Data being logged
- The severity of the log entry from
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- De-serialization constructor for the InventoryNode Class
-
-
-
-
- Serialization handler for the InventoryNode Class
-
-
-
-
- De-serialization handler for the InventoryNode Class
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- For inventory folder nodes specifies weather the folder needs to be
- refreshed from the server
-
-
-
-
- Exception class to identify inventory exceptions
-
-
-
-
- Responsible for maintaining inventory structure. Inventory constructs nodes
- and manages node children as is necessary to maintain a coherant hirarchy.
- Other classes should not manipulate or create InventoryNodes explicitly. When
- A node's parent changes (when a folder is moved, for example) simply pass
- Inventory the updated InventoryFolder and it will make the appropriate changes
- to its internal representation.
-
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the InventoryObjectUpdated Event
- A InventoryObjectUpdatedEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the InventoryObjectRemoved Event
- A InventoryObjectRemovedEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the InventoryObjectAdded Event
- A InventoryObjectAddedEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
-
- Returns the contents of the specified folder
-
- A folder's UUID
- The contents of the folder corresponding to folder
- When folder
does not exist in the inventory
-
-
-
- Updates the state of the InventoryNode and inventory data structure that
- is responsible for the InventoryObject. If the item was previously not added to inventory,
- it adds the item, and updates structure accordingly. If it was, it updates the
- InventoryNode, changing the parent node if item.parentUUID
does
- not match node.Parent.Data.UUID
.
-
- You can not set the inventory root folder using this method
-
- The InventoryObject to store
-
-
-
- Removes the InventoryObject and all related node data from Inventory.
-
- The InventoryObject to remove.
-
-
-
- Used to find out if Inventory contains the InventoryObject
- specified by uuid
.
-
- The UUID to check.
- true if inventory contains uuid, false otherwise
-
-
-
- Saves the current inventory structure to a cache file
-
- Name of the cache file to save to
-
-
-
- Loads in inventory cache file into the inventory structure. Note only valid to call after login has been successful.
-
- Name of the cache file to load
- The number of inventory items sucessfully reconstructed into the inventory node tree
-
-
- Raised when the simulator sends us data containing
- ...
-
-
- Raised when the simulator sends us data containing
- ...
-
-
- Raised when the simulator sends us data containing
- ...
-
-
-
- The root folder of this avatars inventory
-
-
-
-
- The default shared library folder
-
-
-
-
- The root node of the avatars inventory
-
-
-
-
- The root node of the default shared library
-
-
-
-
- By using the bracket operator on this class, the program can get the
- InventoryObject designated by the specified uuid. If the value for the corresponding
- UUID is null, the call is equivelant to a call to RemoveNodeFor(this[uuid])
.
- If the value is non-null, it is equivelant to a call to UpdateNodeFor(value)
,
- the uuid parameter is ignored.
-
- The UUID of the InventoryObject to get or set, ignored if set to non-null value.
- The InventoryObject corresponding to uuid
.
-
-
- Describes tasks returned in LandStatReply
-
-
-
- Estate level administration and utilities
-
-
-
- Textures for each of the four terrain height levels
-
-
- Upper/lower texture boundaries for each corner of the sim
-
-
-
- Constructor for EstateTools class
-
-
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the TopCollidersReply event
- A TopCollidersReplyEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the TopScriptsReply event
- A TopScriptsReplyEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the EstateUsersReply event
- A EstateUsersReplyEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the EstateGroupsReply event
- A EstateGroupsReplyEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the EstateManagersReply event
- A EstateManagersReplyEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the EstateBansReply event
- A EstateBansReplyEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the EstateCovenantReply event
- A EstateCovenantReplyEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the EstateUpdateInfoReply event
- A EstateUpdateInfoReplyEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
-
- Requests estate information such as top scripts and colliders
-
-
-
-
-
-
-
- Requests estate settings, including estate manager and access/ban lists
-
-
- Requests the "Top Scripts" list for the current region
-
-
- Requests the "Top Colliders" list for the current region
-
-
-
- Set several estate specific configuration variables
-
- The Height of the waterlevel over the entire estate. Defaults to 20
- The maximum height change allowed above the baked terrain. Defaults to 4
- The minimum height change allowed below the baked terrain. Defaults to -4
- true to use
- if True forces the sun position to the position in SunPosition
- The current position of the sun on the estate, or when FixedSun is true the static position
- the sun will remain. 6.0 = Sunrise, 30.0 = Sunset
-
-
-
- Request return of objects owned by specified avatar
-
- The Agents owning the primitives to return
- specify the coverage and type of objects to be included in the return
- true to perform return on entire estate
-
-
-
-
-
-
-
-
- Used for setting and retrieving various estate panel settings
-
- EstateOwnerMessage Method field
- List of parameters to include
-
-
-
- Kick an avatar from an estate
-
- Key of Agent to remove
-
-
-
- Ban an avatar from an estate
- Key of Agent to remove
- Ban user from this estate and all others owned by the estate owner
-
-
- Unban an avatar from an estate
- Key of Agent to remove
- /// Unban user from this estate and all others owned by the estate owner
-
-
-
- Send a message dialog to everyone in an entire estate
-
- Message to send all users in the estate
-
-
-
- Send a message dialog to everyone in a simulator
-
- Message to send all users in the simulator
-
-
-
- Send an avatar back to their home location
-
- Key of avatar to send home
-
-
-
- Begin the region restart process
-
-
-
-
- Cancels a region restart
-
-
-
- Estate panel "Region" tab settings
-
-
- Estate panel "Debug" tab settings
-
-
- Used for setting the region's terrain textures for its four height levels
-
-
-
-
-
-
- Used for setting sim terrain texture heights
-
-
- Requests the estate covenant
-
-
-
- Upload a terrain RAW file
-
- A byte array containing the encoded terrain data
- The name of the file being uploaded
- The Id of the transfer request
-
-
-
- Teleports all users home in current Estate
-
-
-
-
- Remove estate manager
- Key of Agent to Remove
- removes manager to this estate and all others owned by the estate owner
-
-
-
- Add estate manager
- Key of Agent to Add
- Add agent as manager to this estate and all others owned by the estate owner
-
-
-
- Add's an agent to the estate Allowed list
- Key of Agent to Add
- Add agent as an allowed reisdent to All estates if true
-
-
-
- Removes an agent from the estate Allowed list
- Key of Agent to Remove
- Removes agent as an allowed reisdent from All estates if true
-
-
-
-
- Add's a group to the estate Allowed list
- Key of Group to Add
- Add Group as an allowed group to All estates if true
-
-
-
-
- Removes a group from the estate Allowed list
- Key of Group to Remove
- Removes Group as an allowed Group from All estates if true
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Raised when the data server responds to a request.
-
-
- Raised when the data server responds to a request.
-
-
- Raised when the data server responds to a request.
-
-
- Raised when the data server responds to a request.
-
-
- Raised when the data server responds to a request.
-
-
- Raised when the data server responds to a request.
-
-
- Raised when the data server responds to a request.
-
-
- Raised when the data server responds to a request.
-
-
- Used in the ReportType field of a LandStatRequest
-
-
- Used by EstateOwnerMessage packets
-
-
- Used by EstateOwnerMessage packets
-
-
-
-
-
-
-
- No flags set
-
-
- Only return targets scripted objects
-
-
- Only return targets objects if on others land
-
-
- Returns target's scripted objects and objects on other parcels
-
-
- Ground texture settings for each corner of the region
-
-
- Used by GroundTextureHeightSettings
-
-
- The high and low texture thresholds for each corner of the sim
-
-
- Raised on LandStatReply when the report type is for "top colliders"
-
-
- Construct a new instance of the TopCollidersReplyEventArgs class
- The number of returned items in LandStatReply
- Dictionary of Object UUIDs to tasks returned in LandStatReply
-
-
-
- The number of returned items in LandStatReply
-
-
-
-
- A Dictionary of Object UUIDs to tasks returned in LandStatReply
-
-
-
- Raised on LandStatReply when the report type is for "top Scripts"
-
-
- Construct a new instance of the TopScriptsReplyEventArgs class
- The number of returned items in LandStatReply
- Dictionary of Object UUIDs to tasks returned in LandStatReply
-
-
-
- The number of scripts returned in LandStatReply
-
-
-
-
- A Dictionary of Object UUIDs to tasks returned in LandStatReply
-
-
-
- Returned, along with other info, upon a successful .RequestInfo()
-
-
- Construct a new instance of the EstateBansReplyEventArgs class
- The estate's identifier on the grid
- The number of returned items in LandStatReply
- User UUIDs banned
-
-
-
- The identifier of the estate
-
-
-
-
- The number of returned itmes
-
-
-
-
- List of UUIDs of Banned Users
-
-
-
- Returned, along with other info, upon a successful .RequestInfo()
-
-
- Construct a new instance of the EstateUsersReplyEventArgs class
- The estate's identifier on the grid
- The number of users
- Allowed users UUIDs
-
-
-
- The identifier of the estate
-
-
-
-
- The number of returned items
-
-
-
-
- List of UUIDs of Allowed Users
-
-
-
- Returned, along with other info, upon a successful .RequestInfo()
-
-
- Construct a new instance of the EstateGroupsReplyEventArgs class
- The estate's identifier on the grid
- The number of Groups
- Allowed Groups UUIDs
-
-
-
- The identifier of the estate
-
-
-
-
- The number of returned items
-
-
-
-
- List of UUIDs of Allowed Groups
-
-
-
- Returned, along with other info, upon a successful .RequestInfo()
-
-
- Construct a new instance of the EstateManagersReplyEventArgs class
- The estate's identifier on the grid
- The number of Managers
- Managers UUIDs
-
-
-
- The identifier of the estate
-
-
-
-
- The number of returned items
-
-
-
-
- List of UUIDs of the Estate's Managers
-
-
-
- Returned, along with other info, upon a successful .RequestInfo()
-
-
- Construct a new instance of the EstateCovenantReplyEventArgs class
- The Covenant ID
- The timestamp
- The estate's name
- The Estate Owner's ID (can be a GroupID)
-
-
-
- The Covenant
-
-
-
-
- The timestamp
-
-
-
-
- The Estate name
-
-
-
-
- The Estate Owner's ID (can be a GroupID)
-
-
-
- Returned, along with other info, upon a successful .RequestInfo()
-
-
- Construct a new instance of the EstateUpdateInfoReplyEventArgs class
- The estate's name
- The Estate Owners ID (can be a GroupID)
- The estate's identifier on the grid
-
-
-
-
- The estate's name
-
-
-
-
- The Estate Owner's ID (can be a GroupID)
-
-
-
-
- The identifier of the estate on the grid
-
-
-
-
-
-
-
- Image width
-
-
-
-
- Image height
-
-
-
-
- Image channel flags
-
-
-
-
- Red channel data
-
-
-
-
- Green channel data
-
-
-
-
- Blue channel data
-
-
-
-
- Alpha channel data
-
-
-
-
- Bump channel data
-
-
-
-
- Create a new blank image
-
- width
- height
- channel flags
-
-
-
-
-
-
-
-
-
- Convert the channels in the image. Channels are created or destroyed as required.
-
- new channel flags
-
-
-
- Resize or stretch the image using nearest neighbor (ugly) resampling
-
- new width
- new height
-
-
-
- Create a byte array containing 32-bit RGBA data with a bottom-left
- origin, suitable for feeding directly into OpenGL
-
- A byte array containing raw texture data
-
-
-
- Represents an AssetScriptBinary object containing the
- LSO compiled bytecode of an LSL script
-
-
-
- Initializes a new instance of an AssetScriptBinary object
-
-
- Initializes a new instance of an AssetScriptBinary object with parameters
- A unique specific to this asset
- A byte array containing the raw asset data
-
-
-
- TODO: Encodes a scripts contents into a LSO Bytecode file
-
-
-
-
- TODO: Decode LSO Bytecode into a string
-
- true
-
-
- Override the base classes AssetType
-
-
-
-
-
-
-
-
- An instance of DelegateWrapper which calls InvokeWrappedDelegate,
- which in turn calls the DynamicInvoke method of the wrapped
- delegate
-
-
-
-
- Callback used to call EndInvoke on the asynchronously
- invoked DelegateWrapper
-
-
-
-
- Executes the specified delegate with the specified arguments
- asynchronously on a thread pool thread
-
-
-
-
-
-
- Invokes the wrapped delegate synchronously
-
-
-
-
-
-
- Calls EndInvoke on the wrapper and Close on the resulting WaitHandle
- to prevent resource leaks
-
-
-
-
-
- Delegate to wrap another delegate and its arguments
-
-
-
-
-
-
- Checks the instance back into the object pool
-
-
-
-
- Returns an instance of the class that has been checked out of the Object Pool.
-
-
-
-
- Creates a new instance of the ObjectPoolBase class. Initialize MUST be called
- after using this constructor.
-
-
-
-
- Creates a new instance of the ObjectPool Base class.
-
- The object pool is composed of segments, which
- are allocated whenever the size of the pool is exceeded. The number of items
- in a segment should be large enough that allocating a new segmeng is a rare
- thing. For example, on a server that will have 10k people logged in at once,
- the receive buffer object pool should have segment sizes of at least 1000
- byte arrays per segment.
-
- The minimun number of segments that may exist.
- Perform a full GC.Collect whenever a segment is allocated, and then again after allocation to compact the heap.
- The frequency which segments are checked to see if they're eligible for cleanup.
-
-
-
- Forces the segment cleanup algorithm to be run. This method is intended
- primarly for use from the Unit Test libraries.
-
-
-
-
- Responsible for allocate 1 instance of an object that will be stored in a segment.
-
- An instance of whatever objec the pool is pooling.
-
-
-
- Checks in an instance of T owned by the object pool. This method is only intended to be called
- by the WrappedObject class.
-
- The segment from which the instance is checked out.
- The instance of T to check back into the segment.
-
-
-
- Checks an instance of T from the pool. If the pool is not sufficient to
- allow the checkout, a new segment is created.
-
- A WrappedObject around the instance of T. To check
- the instance back into the segment, be sureto dispose the WrappedObject
- when finished.
-
-
-
- The total number of segments created. Intended to be used by the Unit Tests.
-
-
-
-
- The number of items that are in a segment. Items in a segment
- are all allocated at the same time, and are hopefully close to
- each other in the managed heap.
-
-
-
-
- The minimum number of segments. When segments are reclaimed,
- this number of segments will always be left alone. These
- segments are allocated at startup.
-
-
-
-
- The age a segment must be before it's eligible for cleanup.
- This is used to prevent thrash, and typical values are in
- the 5 minute range.
-
-
-
-
- The frequence which the cleanup thread runs. This is typically
- expected to be in the 5 minute range.
-
-
-
- Size of the byte array used to store raw packet data
-
-
- Raw packet data buffer
-
-
- Length of the data to transmit
-
-
- EndPoint of the remote host
-
-
-
- Create an allocated UDP packet buffer for receiving a packet
-
-
-
-
- Create an allocated UDP packet buffer for sending a packet
-
- EndPoint of the remote host
-
-
-
- Create an allocated UDP packet buffer for sending a packet
-
- EndPoint of the remote host
- Size of the buffer to allocate for packet data
-
-
-
- Object pool for packet buffers. This is used to allocate memory for all
- incoming and outgoing packets, and zerocoding buffers for those packets
-
-
-
-
- Initialize the object pool in client mode
-
- Server to connect to
-
-
-
-
-
- Initialize the object pool in server mode
-
-
-
-
-
-
- Returns a packet buffer with EndPoint set if the buffer is in
- client mode, or with EndPoint set to null in server mode
-
- Initialized UDPPacketBuffer object
-
-
-
- Default constructor
-
-
-
-
- Check a packet buffer out of the pool
-
- A packet buffer object
-
-
-
- Static pre-defined animations available to all agents
-
-
-
- Agent with afraid expression on face
-
-
- Agent aiming a bazooka (right handed)
-
-
- Agent aiming a bow (left handed)
-
-
- Agent aiming a hand gun (right handed)
-
-
- Agent aiming a rifle (right handed)
-
-
- Agent with angry expression on face
-
-
- Agent hunched over (away)
-
-
- Agent doing a backflip
-
-
- Agent laughing while holding belly
-
-
- Agent blowing a kiss
-
-
- Agent with bored expression on face
-
-
- Agent bowing to audience
-
-
- Agent brushing himself/herself off
-
-
- Agent in busy mode
-
-
- Agent clapping hands
-
-
- Agent doing a curtsey bow
-
-
- Agent crouching
-
-
- Agent crouching while walking
-
-
- Agent crying
-
-
- Agent unanimated with arms out (e.g. setting appearance)
-
-
- Agent re-animated after set appearance finished
-
-
- Agent dancing
-
-
- Agent dancing
-
-
- Agent dancing
-
-
- Agent dancing
-
-
- Agent dancing
-
-
- Agent dancing
-
-
- Agent dancing
-
-
- Agent dancing
-
-
- Agent on ground unanimated
-
-
- Agent boozing it up
-
-
- Agent with embarassed expression on face
-
-
- Agent with afraid expression on face
-
-
- Agent with angry expression on face
-
-
- Agent with bored expression on face
-
-
- Agent crying
-
-
- Agent showing disdain (dislike) for something
-
-
- Agent with embarassed expression on face
-
-
- Agent with frowning expression on face
-
-
- Agent with kissy face
-
-
- Agent expressing laughgter
-
-
- Agent with open mouth
-
-
- Agent with repulsed expression on face
-
-
- Agent expressing sadness
-
-
- Agent shrugging shoulders
-
-
- Agent with a smile
-
-
- Agent expressing surprise
-
-
- Agent sticking tongue out
-
-
- Agent with big toothy smile
-
-
- Agent winking
-
-
- Agent expressing worry
-
-
- Agent falling down
-
-
- Agent walking (feminine version)
-
-
- Agent wagging finger (disapproval)
-
-
- I'm not sure I want to know
-
-
- Agent in superman position
-
-
- Agent in superman position
-
-
- Agent greeting another
-
-
- Agent holding bazooka (right handed)
-
-
- Agent holding a bow (left handed)
-
-
- Agent holding a handgun (right handed)
-
-
- Agent holding a rifle (right handed)
-
-
- Agent throwing an object (right handed)
-
-
- Agent in static hover
-
-
- Agent hovering downward
-
-
- Agent hovering upward
-
-
- Agent being impatient
-
-
- Agent jumping
-
-
- Agent jumping with fervor
-
-
- Agent point to lips then rear end
-
-
- Agent landing from jump, finished flight, etc
-
-
- Agent laughing
-
-
- Agent landing from jump, finished flight, etc
-
-
- Agent sitting on a motorcycle
-
-
-
-
-
- Agent moving head side to side
-
-
- Agent moving head side to side with unhappy expression
-
-
- Agent taunting another
-
-
-
-
-
- Agent giving peace sign
-
-
- Agent pointing at self
-
-
- Agent pointing at another
-
-
- Agent preparing for jump (bending knees)
-
-
- Agent punching with left hand
-
-
- Agent punching with right hand
-
-
- Agent acting repulsed
-
-
- Agent trying to be Chuck Norris
-
-
- Rocks, Paper, Scissors 1, 2, 3
-
-
- Agent with hand flat over other hand
-
-
- Agent with fist over other hand
-
-
- Agent with two fingers spread over other hand
-
-
- Agent running
-
-
- Agent appearing sad
-
-
- Agent saluting
-
-
- Agent shooting bow (left handed)
-
-
- Agent cupping mouth as if shouting
-
-
- Agent shrugging shoulders
-
-
- Agent in sit position
-
-
- Agent in sit position (feminine)
-
-
- Agent in sit position (generic)
-
-
- Agent sitting on ground
-
-
- Agent sitting on ground
-
-
-
-
-
- Agent sleeping on side
-
-
- Agent smoking
-
-
- Agent inhaling smoke
-
-
-
-
-
- Agent taking a picture
-
-
- Agent standing
-
-
- Agent standing up
-
-
- Agent standing
-
-
- Agent standing
-
-
- Agent standing
-
-
- Agent standing
-
-
- Agent stretching
-
-
- Agent in stride (fast walk)
-
-
- Agent surfing
-
-
- Agent acting surprised
-
-
- Agent striking with a sword
-
-
- Agent talking (lips moving)
-
-
- Agent throwing a tantrum
-
-
- Agent throwing an object (right handed)
-
-
- Agent trying on a shirt
-
-
- Agent turning to the left
-
-
- Agent turning to the right
-
-
- Agent typing
-
-
- Agent walking
-
-
- Agent whispering
-
-
- Agent whispering with fingers in mouth
-
-
- Agent winking
-
-
- Agent winking
-
-
- Agent worried
-
-
- Agent nodding yes
-
-
- Agent nodding yes with happy face
-
-
- Agent floating with legs and arms crossed
-
-
-
- A dictionary containing all pre-defined animations
-
- A dictionary containing the pre-defined animations,
- where the key is the animations ID, and the value is a string
- containing a name to identify the purpose of the animation
-
-
-
- Represents an that represents an avatars body ie: Hair, Etc.
-
-
-
- Initializes a new instance of an AssetBodyPart object
-
-
- Initializes a new instance of an AssetBodyPart object with parameters
- A unique specific to this asset
- A byte array containing the raw asset data
-
-
- Initializes a new instance of an AssetBodyPart object with parameters
- A string representing the values of the Bodypart
-
-
- Override the base classes AssetType
-
-
-
- Archives assets
-
-
-
-
- Archive assets
-
-
-
-
- Archive the assets given to this archiver to the given archive.
-
-
-
-
-
- Write an assets metadata file to the given archive
-
-
-
-
-
- Write asset data files to the given archive
-
-
-
-
-
-
-
-
-
- OK
-
-
- Transfer completed
-
-
-
-
-
-
-
-
- Unknown error occurred
-
-
- Equivalent to a 404 error
-
-
- Client does not have permission for that resource
-
-
- Unknown status
-
-
-
-
-
-
-
-
-
-
- Unknown
-
-
- Virtually all asset transfers use this channel
-
-
-
-
-
-
-
-
-
-
- Asset from the asset server
-
-
- Inventory item
-
-
- Estate asset, such as an estate covenant
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Image file format
-
-
-
-
-
-
-
-
- Number of milliseconds passed since the last transfer
- packet was received
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Number of milliseconds to wait for a transfer header packet if out of order data was received
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the XferReceived event
- A XferReceivedEventArgs object containing the
- data returned from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the AssetUploaded event
- A AssetUploadedEventArgs object containing the
- data returned from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the UploadProgress event
- A UploadProgressEventArgs object containing the
- data returned from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the InitiateDownload event
- A InitiateDownloadEventArgs object containing the
- data returned from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the ImageReceiveProgress event
- A ImageReceiveProgressEventArgs object containing the
- data returned from the simulator
-
-
- Thread sync lock object
-
-
- Texture download cache
-
-
-
- Default constructor
-
- A reference to the GridClient object
-
-
-
- Request an asset download
-
- Asset UUID
- Asset type, must be correct for the transfer to succeed
- Whether to give this transfer an elevated priority
- The callback to fire when the simulator responds with the asset data
-
-
-
- Request an asset download
-
- Asset UUID
- Asset type, must be correct for the transfer to succeed
- Whether to give this transfer an elevated priority
- Source location of the requested asset
- The callback to fire when the simulator responds with the asset data
-
-
-
- Request an asset download
-
- Asset UUID
- Asset type, must be correct for the transfer to succeed
- Whether to give this transfer an elevated priority
- Source location of the requested asset
- UUID of the transaction
- The callback to fire when the simulator responds with the asset data
-
-
-
- Request an asset download through the almost deprecated Xfer system
-
- Filename of the asset to request
- Whether or not to delete the asset
- off the server after it is retrieved
- Use large transfer packets or not
- UUID of the file to request, if filename is
- left empty
- Asset type of vFileID
, or
- AssetType.Unknown
if filename is not empty
- Sets the FilePath in the request to Cache
- (4) if true, otherwise Unknown (0) is used
-
-
-
-
-
-
- Use UUID.Zero if you do not have the
- asset ID but have all the necessary permissions
- The item ID of this asset in the inventory
- Use UUID.Zero if you are not requesting an
- asset from an object inventory
- The owner of this asset
- Asset type
- Whether to prioritize this asset download or not
-
-
-
-
- Used to force asset data into the PendingUpload property, ie: for raw terrain uploads
-
- An AssetUpload object containing the data to upload to the simulator
-
-
-
- Request an asset be uploaded to the simulator
-
- The Object containing the asset data
- If True, the asset once uploaded will be stored on the simulator
- in which the client was connected in addition to being stored on the asset server
- The of the transfer, can be used to correlate the upload with
- events being fired
-
-
-
- Request an asset be uploaded to the simulator
-
- The of the asset being uploaded
- A byte array containing the encoded asset data
- If True, the asset once uploaded will be stored on the simulator
- in which the client was connected in addition to being stored on the asset server
- The of the transfer, can be used to correlate the upload with
- events being fired
-
-
-
- Request an asset be uploaded to the simulator
-
-
- Asset type to upload this data as
- A byte array containing the encoded asset data
- If True, the asset once uploaded will be stored on the simulator
- in which the client was connected in addition to being stored on the asset server
- The of the transfer, can be used to correlate the upload with
- events being fired
-
-
-
- Initiate an asset upload
-
- The ID this asset will have if the
- upload succeeds
- Asset type to upload this data as
- Raw asset data to upload
- Whether to store this asset on the local
- simulator or the grid-wide asset server
- The tranaction id for the upload
- The transaction ID of this transfer
-
-
-
- Request a texture asset from the simulator using the system to
- manage the requests and re-assemble the image from the packets received from the simulator
-
- The of the texture asset to download
- The of the texture asset.
- Use for most textures, or for baked layer texture assets
- A float indicating the requested priority for the transfer. Higher priority values tell the simulator
- to prioritize the request before lower valued requests. An image already being transferred using the can have
- its priority changed by resending the request with the new priority value
- Number of quality layers to discard.
- This controls the end marker of the data sent. Sending with value -1 combined with priority of 0 cancels an in-progress
- transfer.
- A bug exists in the Linden Simulator where a -1 will occasionally be sent with a non-zero priority
- indicating an off-by-one error.
- The packet number to begin the request at. A value of 0 begins the request
- from the start of the asset texture
- The callback to fire when the image is retrieved. The callback
- will contain the result of the request and the texture asset data
- If true, the callback will be fired for each chunk of the downloaded image.
- The callback asset parameter will contain all previously received chunks of the texture asset starting
- from the beginning of the request
-
- Request an image and fire a callback when the request is complete
-
- Client.Assets.RequestImage(UUID.Parse("c307629f-e3a1-4487-5e88-0d96ac9d4965"), ImageType.Normal, TextureDownloader_OnDownloadFinished);
-
- private void TextureDownloader_OnDownloadFinished(TextureRequestState state, AssetTexture asset)
- {
- if(state == TextureRequestState.Finished)
- {
- Console.WriteLine("Texture {0} ({1} bytes) has been successfully downloaded",
- asset.AssetID,
- asset.AssetData.Length);
- }
- }
-
- Request an image and use an inline anonymous method to handle the downloaded texture data
-
- Client.Assets.RequestImage(UUID.Parse("c307629f-e3a1-4487-5e88-0d96ac9d4965"), ImageType.Normal, delegate(TextureRequestState state, AssetTexture asset)
- {
- if(state == TextureRequestState.Finished)
- {
- Console.WriteLine("Texture {0} ({1} bytes) has been successfully downloaded",
- asset.AssetID,
- asset.AssetData.Length);
- }
- }
- );
-
- Request a texture, decode the texture to a bitmap image and apply it to a imagebox
-
- Client.Assets.RequestImage(UUID.Parse("c307629f-e3a1-4487-5e88-0d96ac9d4965"), ImageType.Normal, TextureDownloader_OnDownloadFinished);
-
- private void TextureDownloader_OnDownloadFinished(TextureRequestState state, AssetTexture asset)
- {
- if(state == TextureRequestState.Finished)
- {
- ManagedImage imgData;
- Image bitmap;
-
- if (state == TextureRequestState.Finished)
- {
- OpenJPEG.DecodeToImage(assetTexture.AssetData, out imgData, out bitmap);
- picInsignia.Image = bitmap;
- }
- }
- }
-
-
-
-
-
- Overload: Request a texture asset from the simulator using the system to
- manage the requests and re-assemble the image from the packets received from the simulator
-
- The of the texture asset to download
- The callback to fire when the image is retrieved. The callback
- will contain the result of the request and the texture asset data
-
-
-
- Overload: Request a texture asset from the simulator using the system to
- manage the requests and re-assemble the image from the packets received from the simulator
-
- The of the texture asset to download
- The of the texture asset.
- Use for most textures, or for baked layer texture assets
- The callback to fire when the image is retrieved. The callback
- will contain the result of the request and the texture asset data
-
-
-
- Overload: Request a texture asset from the simulator using the system to
- manage the requests and re-assemble the image from the packets received from the simulator
-
- The of the texture asset to download
- The of the texture asset.
- Use for most textures, or for baked layer texture assets
- The callback to fire when the image is retrieved. The callback
- will contain the result of the request and the texture asset data
- If true, the callback will be fired for each chunk of the downloaded image.
- The callback asset parameter will contain all previously received chunks of the texture asset starting
- from the beginning of the request
-
-
-
- Cancel a texture request
-
- The texture assets
-
-
-
- Lets TexturePipeline class fire the progress event
-
- The texture ID currently being downloaded
- the number of bytes transferred
- the total number of bytes expected
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Raised when the simulator responds sends
-
-
- Raised during upload completes
-
-
- Raised during upload with progres update
-
-
- Fired when the simulator sends an InitiateDownloadPacket, used to download terrain .raw files
-
-
- Fired when a texture is in the process of being downloaded by the TexturePipeline class
-
-
-
- Callback used for various asset download requests
-
- Transfer information
- Downloaded asset, null on fail
-
-
-
- Callback used upon competition of baked texture upload
-
- Asset UUID of the newly uploaded baked texture
-
-
- Xfer data
-
-
- Upload data
-
-
- Filename used on the simulator
-
-
- Filename used by the client
-
-
- UUID of the image that is in progress
-
-
- Number of bytes received so far
-
-
- Image size in bytes
-
-
-
-
-
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the AttachedSound Event
- A AttachedSoundEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the AttachedSoundGainChange Event
- A AttachedSoundGainChangeEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the SoundTrigger Event
- A SoundTriggerEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the PreloadSound Event
- A PreloadSoundEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
-
- Construct a new instance of the SoundManager class, used for playing and receiving
- sound assets
-
- A reference to the current GridClient instance
-
-
-
- Plays a sound in the current region at full volume from avatar position
-
- UUID of the sound to be played
-
-
-
- Plays a sound in the current region at full volume
-
- UUID of the sound to be played.
- position for the sound to be played at. Normally the avatar.
-
-
-
- Plays a sound in the current region
-
- UUID of the sound to be played.
- position for the sound to be played at. Normally the avatar.
- volume of the sound, from 0.0 to 1.0
-
-
-
- Plays a sound in the specified sim
-
- UUID of the sound to be played.
- UUID of the sound to be played.
- position for the sound to be played at. Normally the avatar.
- volume of the sound, from 0.0 to 1.0
-
-
-
- Play a sound asset
-
- UUID of the sound to be played.
- handle id for the sim to be played in.
- position for the sound to be played at. Normally the avatar.
- volume of the sound, from 0.0 to 1.0
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Raised when the simulator sends us data containing
- sound
-
-
- Raised when the simulator sends us data containing
- ...
-
-
- Raised when the simulator sends us data containing
- ...
-
-
- Raised when the simulator sends us data containing
- ...
-
-
- Provides data for the event
- The event occurs when the simulator sends
- the sound data which emits from an agents attachment
-
- The following code example shows the process to subscribe to the event
- and a stub to handle the data passed from the simulator
-
- // Subscribe to the AttachedSound event
- Client.Sound.AttachedSound += Sound_AttachedSound;
-
- // process the data raised in the event here
- private void Sound_AttachedSound(object sender, AttachedSoundEventArgs e)
- {
- // ... Process AttachedSoundEventArgs here ...
- }
-
-
-
-
-
- Construct a new instance of the SoundTriggerEventArgs class
-
- The sound asset id
- The ID of the owner
- The ID of the object
- The volume level
- The
-
-
- Get the sound asset id
-
-
- Get the ID of the owner
-
-
- Get the ID of the Object
-
-
- Get the volume level
-
-
- Get the
-
-
- Provides data for the event
- The event occurs when an attached sound
- changes its volume level
-
-
-
- Construct a new instance of the AttachedSoundGainChangedEventArgs class
-
- The ID of the Object
- The new volume level
-
-
- Get the ID of the Object
-
-
- Get the volume level
-
-
- Provides data for the event
- The event occurs when the simulator forwards
- a request made by yourself or another agent to play either an asset sound or a built in sound
-
- Requests to play sounds where the is not one of the built-in
- will require sending a request to download the sound asset before it can be played
-
-
- The following code example uses the ,
- and
- properties to display some information on a sound request on the window.
-
- // subscribe to the event
- Client.Sound.SoundTrigger += Sound_SoundTrigger;
-
- // play the pre-defined BELL_TING sound
- Client.Sound.SendSoundTrigger(Sounds.BELL_TING);
-
- // handle the response data
- private void Sound_SoundTrigger(object sender, SoundTriggerEventArgs e)
- {
- Console.WriteLine("{0} played the sound {1} at volume {2}",
- e.OwnerID, e.SoundID, e.Gain);
- }
-
-
-
-
-
- Construct a new instance of the SoundTriggerEventArgs class
-
- The sound asset id
- The ID of the owner
- The ID of the object
- The ID of the objects parent
- The volume level
- The regionhandle
- The source position
-
-
- Get the sound asset id
-
-
- Get the ID of the owner
-
-
- Get the ID of the Object
-
-
- Get the ID of the objects parent
-
-
- Get the volume level
-
-
- Get the regionhandle
-
-
- Get the source position
-
-
- Provides data for the event
- The event occurs when the simulator sends
- the appearance data for an avatar
-
- The following code example uses the and
- properties to display the selected shape of an avatar on the window.
-
- // subscribe to the event
- Client.Avatars.AvatarAppearance += Avatars_AvatarAppearance;
-
- // handle the data when the event is raised
- void Avatars_AvatarAppearance(object sender, AvatarAppearanceEventArgs e)
- {
- Console.WriteLine("The Agent {0} is using a {1} shape.", e.AvatarID, (e.VisualParams[31] > 0) : "male" ? "female")
- }
-
-
-
-
-
- Construct a new instance of the PreloadSoundEventArgs class
-
- The sound asset id
- The ID of the owner
- The ID of the object
-
-
- Get the sound asset id
-
-
- Get the ID of the owner
-
-
- Get the ID of the Object
-
-
-
- Class for controlling various system settings.
-
- Some values are readonly because they affect things that
- happen when the GridClient object is initialized, so changing them at
- runtime won't do any good. Non-readonly values may affect things that
- happen at login or dynamically
-
-
- Main grid login server
-
-
- Beta grid login server
-
-
-
- InventoryManager requests inventory information on login,
- GridClient initializes an Inventory store for main inventory.
-
-
-
-
- InventoryManager requests library information on login,
- GridClient initializes an Inventory store for the library.
-
-
-
- Number of milliseconds between sending pings to each sim
-
-
- Number of milliseconds between sending camera updates
-
-
- Number of milliseconds between updating the current
- positions of moving, non-accelerating and non-colliding objects
-
-
- Millisecond interval between ticks, where all ACKs are
- sent out and the age of unACKed packets is checked
-
-
- The initial size of the packet inbox, where packets are
- stored before processing
-
-
- Maximum size of packet that we want to send over the wire
-
-
- The maximum value of a packet sequence number before it
- rolls over back to one
-
-
- The maximum size of the sequence number archive, used to
- check for resent and/or duplicate packets
-
-
- The relative directory where external resources are kept
-
-
- Login server to connect to
-
-
- IP Address the client will bind to
-
-
- Use XML-RPC Login or LLSD Login, default is XML-RPC Login
-
-
- Number of milliseconds before an asset transfer will time
- out
-
-
- Number of milliseconds before a teleport attempt will time
- out
-
-
- Number of milliseconds before NetworkManager.Logout() will
- time out
-
-
- Number of milliseconds before a CAPS call will time out
- Setting this too low will cause web requests time out and
- possibly retry repeatedly
-
-
- Number of milliseconds for xml-rpc to timeout
-
-
- Milliseconds before a packet is assumed lost and resent
-
-
- Milliseconds without receiving a packet before the
- connection to a simulator is assumed lost
-
-
- Milliseconds to wait for a simulator info request through
- the grid interface
-
-
- Maximum number of queued ACKs to be sent before SendAcks()
- is forced
-
-
- Network stats queue length (seconds)
-
-
- Enable to process packets synchronously, where all of the
- callbacks for each packet must return before the next packet is
- processed
- This is an experimental feature and is not completely
- reliable yet. Ideally it would reduce context switches and thread
- overhead, but several calls currently block for a long time and
- would need to be rewritten as asynchronous code before this is
- feasible
-
-
- Enable/disable storing terrain heightmaps in the
- TerrainManager
-
-
- Enable/disable sending periodic camera updates
-
-
- Enable/disable automatically setting agent appearance at
- login and after sim crossing
-
-
- Enable/disable automatically setting the bandwidth throttle
- after connecting to each simulator
- The default throttle uses the equivalent of the maximum
- bandwidth setting in the official client. If you do not set a
- throttle your connection will by default be throttled well below
- the minimum values and you may experience connection problems
-
-
- Enable/disable the sending of pings to monitor lag and
- packet loss
-
-
- Should we connect to multiple sims? This will allow
- viewing in to neighboring simulators and sim crossings
- (Experimental)
-
-
- If true, all object update packets will be decoded in to
- native objects. If false, only updates for our own agent will be
- decoded. Registering an event handler will force objects for that
- type to always be decoded. If this is disabled the object tracking
- will have missing or partial prim and avatar information
-
-
- If true, when a cached object check is received from the
- server the full object info will automatically be requested
-
-
- Whether to establish connections to HTTP capabilities
- servers for simulators
-
-
- Whether to decode sim stats
-
-
- The capabilities servers are currently designed to
- periodically return a 502 error which signals for the client to
- re-establish a connection. Set this to true to log those 502 errors
-
-
- If true, any reference received for a folder or item
- the library is not aware of will automatically be fetched
-
-
- If true, and SEND_AGENT_UPDATES
is true,
- AgentUpdate packets will continuously be sent out to give the bot
- smoother movement and autopiloting
-
-
- If true, currently visible avatars will be stored
- in dictionaries inside Simulator.ObjectAvatars
.
- If false, a new Avatar or Primitive object will be created
- each time an object update packet is received
-
-
- If true, currently visible avatars will be stored
- in dictionaries inside Simulator.ObjectPrimitives
.
- If false, a new Avatar or Primitive object will be created
- each time an object update packet is received
-
-
- If true, position and velocity will periodically be
- interpolated (extrapolated, technically) for objects and
- avatars that are being tracked by the library. This is
- necessary to increase the accuracy of speed and position
- estimates for simulated objects
-
-
-
- If true, utilization statistics will be tracked. There is a minor penalty
- in CPU time for enabling this option.
-
-
-
- If true, parcel details will be stored in the
- Simulator.Parcels
dictionary as they are received
-
-
-
- If true, an incoming parcel properties reply will automatically send
- a request for the parcel access list
-
-
-
-
- if true, an incoming parcel properties reply will automatically send
- a request for the traffic count.
-
-
-
-
- If true, images, and other assets downloaded from the server
- will be cached in a local directory
-
-
-
- Path to store cached texture data
-
-
- Maximum size cached files are allowed to take on disk (bytes)
-
-
- Default color used for viewer particle effects
-
-
- Maximum number of times to resend a failed packet
-
-
- Throttle outgoing packet rate
-
-
- UUID of a texture used by some viewers to indentify type of client used
-
-
- The maximum number of concurrent texture downloads allowed
- Increasing this number will not necessarily increase texture retrieval times due to
- simulator throttles
-
-
-
- The Refresh timer inteval is used to set the delay between checks for stalled texture downloads
-
- This is a static variable which applies to all instances
-
-
-
- Textures taking longer than this value will be flagged as timed out and removed from the pipeline
-
-
-
-
- Get or set the minimum log level to output to the console by default
-
- If the library is not compiled with DEBUG defined and this level is set to DEBUG
- You will get no output on the console. This behavior can be overriden by creating
- a logger configuration file for log4net
-
-
-
- Attach avatar names to log messages
-
-
- Log packet retransmission info
-
-
- Constructor
- Reference to a GridClient object
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Cost of uploading an asset
- Read-only since this value is dynamically fetched at login
-
-
-
- Represents a string of characters encoded with specific formatting properties
-
-
-
- A text string containing main text of the notecard
-
-
- List of s embedded on the notecard
-
-
- Construct an Asset of type Notecard
-
-
-
- Construct an Asset object of type Notecard
-
- A unique specific to this asset
- A byte array containing the raw asset data
-
-
-
- Construct an Asset object of type Notecard
-
- A text string containing the main body text of the notecard
-
-
-
- Encode the raw contents of a string with the specific Linden Text properties
-
-
-
-
- Decode the raw asset data including the Linden Text properties
-
- true if the AssetData was successfully decoded
-
-
- Override the base classes AssetType
-
-
-
- Capabilities is the name of the bi-directional HTTP REST protocol
- used to communicate non real-time transactions such as teleporting or
- group messaging
-
-
-
- Reference to the simulator this system is connected to
-
-
-
- Default constructor
-
-
-
-
-
-
- Request the URI of a named capability
-
- Name of the capability to request
- The URI of the requested capability, or String.Empty if
- the capability does not exist
-
-
-
- Process any incoming events, check to see if we have a message created for the event,
-
-
-
-
-
- Capabilities URI this system was initialized with
-
-
- Whether the capabilities event queue is connected and
- listening for incoming events
-
-
-
- Triggered when an event is received via the EventQueueGet
- capability
-
- Event name
- Decoded event data
- The simulator that generated the event
-
-
-
- Level of Detail mesh
-
-
-
-
- Return a decoded capabilities message as a strongly typed object
-
- A string containing the name of the capabilities message key
- An to decode
- A strongly typed object containing the decoded information from the capabilities message, or null
- if no existing Message object exists for the specified event
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Login Request Parameters
-
-
-
- The URL of the Login Server
-
-
- The number of milliseconds to wait before a login is considered
- failed due to timeout
-
-
- The request method
- login_to_simulator is currently the only supported method
-
-
- The Agents First name
-
-
- The Agents Last name
-
-
- A md5 hashed password
- plaintext password will be automatically hashed
-
-
- The agents starting location once logged in
- Either "last", "home", or a string encoded URI
- containing the simulator name and x/y/z coordinates e.g: uri:hooper&128&152&17
-
-
- A string containing the client software channel information
- Second Life Release
-
-
- The client software version information
- The official viewer uses: Second Life Release n.n.n.n
- where n is replaced with the current version of the viewer
-
-
- A string containing the platform information the agent is running on
-
-
- A string hash of the network cards Mac Address
-
-
- Unknown or deprecated
-
-
- A string hash of the first disk drives ID used to identify this clients uniqueness
-
-
- A string containing the viewers Software, this is not directly sent to the login server but
- instead is used to generate the Version string
-
-
- A string representing the software creator. This is not directly sent to the login server but
- is used by the library to generate the Version information
-
-
- If true, this agent agrees to the Terms of Service of the grid its connecting to
-
-
- Unknown
-
-
- An array of string sent to the login server to enable various options
-
-
- A randomly generated ID to distinguish between login attempts. This value is only used
- internally in the library and is never sent over the wire
-
-
-
- The decoded data returned from the login server after a successful login
-
-
-
- true, false, indeterminate
-
-
- Login message of the day
-
-
- M or PG, also agent_region_access and agent_access_max
-
-
-
- Parse LLSD Login Reply Data
-
- An
- contaning the login response data
- XML-RPC logins do not require this as XML-RPC.NET
- automatically populates the struct properly using attributes
-
-
- Sort by name
-
-
- Sort by date
-
-
- Sort folders by name, regardless of whether items are
- sorted by name or date
-
-
- Place system folders at the top
-
-
-
- Possible destinations for DeRezObject request
-
-
-
-
-
-
- Copy from in-world to agent inventory
-
-
- Derez to TaskInventory
-
-
-
-
-
- Take Object
-
-
-
-
-
- Delete Object
-
-
- Put an avatar attachment into agent inventory
-
-
-
-
-
- Return an object back to the owner's inventory
-
-
- Return a deeded object back to the last owner's inventory
-
-
-
- Upper half of the Flags field for inventory items
-
-
-
- Indicates that the NextOwner permission will be set to the
- most restrictive set of permissions found in the object set
- (including linkset items and object inventory items) on next rez
-
-
- Indicates that the object sale information has been
- changed
-
-
- If set, and a slam bit is set, indicates BaseMask will be overwritten on Rez
-
-
- If set, and a slam bit is set, indicates OwnerMask will be overwritten on Rez
-
-
- If set, and a slam bit is set, indicates GroupMask will be overwritten on Rez
-
-
- If set, and a slam bit is set, indicates EveryoneMask will be overwritten on Rez
-
-
- If set, and a slam bit is set, indicates NextOwnerMask will be overwritten on Rez
-
-
- Indicates whether this object is composed of multiple
- items or not
-
-
- Indicates that the asset is only referenced by this
- inventory item. If this item is deleted or updated to reference a
- new assetID, the asset can be deleted
-
-
-
- Base Class for Inventory Items
-
-
-
- of item/folder
-
-
- of parent folder
-
-
- Name of item/folder
-
-
- Item/Folder Owners
-
-
-
- Constructor, takes an itemID as a parameter
-
- The of the item
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Generates a number corresponding to the value of the object to support the use of a hash table,
- suitable for use in hashing algorithms and data structures such as a hash table
-
- A Hashcode of all the combined InventoryBase fields
-
-
-
- Determine whether the specified object is equal to the current object
-
- InventoryBase object to compare against
- true if objects are the same
-
-
-
- Determine whether the specified object is equal to the current object
-
- InventoryBase object to compare against
- true if objects are the same
-
-
-
- An Item in Inventory
-
-
-
- The of this item
-
-
- The combined of this item
-
-
- The type of item from
-
-
- The type of item from the enum
-
-
- The of the creator of this item
-
-
- A Description of this item
-
-
- The s this item is set to or owned by
-
-
- If true, item is owned by a group
-
-
- The price this item can be purchased for
-
-
- The type of sale from the enum
-
-
- Combined flags from
-
-
- Time and date this inventory item was created, stored as
- UTC (Coordinated Universal Time)
-
-
- Used to update the AssetID in requests sent to the server
-
-
- The of the previous owner of the item
-
-
-
- Construct a new InventoryItem object
-
- The of the item
-
-
-
- Construct a new InventoryItem object of a specific Type
-
- The type of item from
- of the item
-
-
-
- Indicates inventory item is a link
-
- True if inventory item is a link to another inventory item
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Generates a number corresponding to the value of the object to support the use of a hash table.
- Suitable for use in hashing algorithms and data structures such as a hash table
-
- A Hashcode of all the combined InventoryItem fields
-
-
-
- Compares an object
-
- The object to compare
- true if comparison object matches
-
-
-
- Determine whether the specified object is equal to the current object
-
- The object to compare against
- true if objects are the same
-
-
-
- Determine whether the specified object is equal to the current object
-
- The object to compare against
- true if objects are the same
-
-
-
- InventoryTexture Class representing a graphical image
-
-
-
-
-
- Construct an InventoryTexture object
-
- A which becomes the
- objects AssetUUID
-
-
-
- Construct an InventoryTexture object from a serialization stream
-
-
-
-
- InventorySound Class representing a playable sound
-
-
-
-
- Construct an InventorySound object
-
- A which becomes the
- objects AssetUUID
-
-
-
- Construct an InventorySound object from a serialization stream
-
-
-
-
- InventoryCallingCard Class, contains information on another avatar
-
-
-
-
- Construct an InventoryCallingCard object
-
- A which becomes the
- objects AssetUUID
-
-
-
- Construct an InventoryCallingCard object from a serialization stream
-
-
-
-
- InventoryLandmark Class, contains details on a specific location
-
-
-
-
- Construct an InventoryLandmark object
-
- A which becomes the
- objects AssetUUID
-
-
-
- Construct an InventoryLandmark object from a serialization stream
-
-
-
-
- Landmarks use the InventoryItemFlags struct and will have a flag of 1 set if they have been visited
-
-
-
-
- InventoryObject Class contains details on a primitive or coalesced set of primitives
-
-
-
-
- Construct an InventoryObject object
-
- A which becomes the
- objects AssetUUID
-
-
-
- Construct an InventoryObject object from a serialization stream
-
-
-
-
- Gets or sets the upper byte of the Flags value
-
-
-
-
- Gets or sets the object attachment point, the lower byte of the Flags value
-
-
-
-
- InventoryNotecard Class, contains details on an encoded text document
-
-
-
-
- Construct an InventoryNotecard object
-
- A which becomes the
- objects AssetUUID
-
-
-
- Construct an InventoryNotecard object from a serialization stream
-
-
-
-
- InventoryCategory Class
-
- TODO: Is this even used for anything?
-
-
-
- Construct an InventoryCategory object
-
- A which becomes the
- objects AssetUUID
-
-
-
- Construct an InventoryCategory object from a serialization stream
-
-
-
-
- InventoryLSL Class, represents a Linden Scripting Language object
-
-
-
-
- Construct an InventoryLSL object
-
- A which becomes the
- objects AssetUUID
-
-
-
- Construct an InventoryLSL object from a serialization stream
-
-
-
-
- InventorySnapshot Class, an image taken with the viewer
-
-
-
-
- Construct an InventorySnapshot object
-
- A which becomes the
- objects AssetUUID
-
-
-
- Construct an InventorySnapshot object from a serialization stream
-
-
-
-
- InventoryAttachment Class, contains details on an attachable object
-
-
-
-
- Construct an InventoryAttachment object
-
- A which becomes the
- objects AssetUUID
-
-
-
- Construct an InventoryAttachment object from a serialization stream
-
-
-
-
- Get the last AttachmentPoint this object was attached to
-
-
-
-
- InventoryWearable Class, details on a clothing item or body part
-
-
-
-
- Construct an InventoryWearable object
-
- A which becomes the
- objects AssetUUID
-
-
-
- Construct an InventoryWearable object from a serialization stream
-
-
-
-
- The , Skin, Shape, Skirt, Etc
-
-
-
-
- InventoryAnimation Class, A bvh encoded object which animates an avatar
-
-
-
-
- Construct an InventoryAnimation object
-
- A which becomes the
- objects AssetUUID
-
-
-
- Construct an InventoryAnimation object from a serialization stream
-
-
-
-
- InventoryGesture Class, details on a series of animations, sounds, and actions
-
-
-
-
- Construct an InventoryGesture object
-
- A which becomes the
- objects AssetUUID
-
-
-
- Construct an InventoryGesture object from a serialization stream
-
-
-
-
- A folder contains s and has certain attributes specific
- to itself
-
-
-
- The Preferred for a folder.
-
-
- The Version of this folder
-
-
- Number of child items this folder contains.
-
-
-
- Constructor
-
- UUID of the folder
-
-
-
-
-
-
-
-
-
- Get Serilization data for this InventoryFolder object
-
-
-
-
- Construct an InventoryFolder object from a serialization stream
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Tools for dealing with agents inventory
-
-
-
- Used for converting shadow_id to asset_id
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the ItemReceived Event
- A ItemReceivedEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the FolderUpdated Event
- A FolderUpdatedEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the InventoryObjectOffered Event
- A InventoryObjectOfferedEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the TaskItemReceived Event
- A TaskItemReceivedEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the FindObjectByPath Event
- A FindObjectByPathEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the TaskInventoryReply Event
- A TaskInventoryReplyEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the SaveAssetToInventory Event
- A SaveAssetToInventoryEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the ScriptRunningReply Event
- A ScriptRunningReplyEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- Partial mapping of AssetTypes to folder names
-
-
-
- Default constructor
-
- Reference to the GridClient object
-
-
-
- Fetch an inventory item from the dataserver
-
- The items
- The item Owners
- a integer representing the number of milliseconds to wait for results
- An object on success, or null if no item was found
- Items will also be sent to the event
-
-
-
- Request A single inventory item
-
- The items
- The item Owners
-
-
-
-
- Request inventory items
-
- Inventory items to request
- Owners of the inventory items
-
-
-
-
- Get contents of a folder
-
- The of the folder to search
- The of the folders owner
- true to retrieve folders
- true to retrieve items
- sort order to return results in
- a integer representing the number of milliseconds to wait for results
- A list of inventory items matching search criteria within folder
-
- InventoryFolder.DescendentCount will only be accurate if both folders and items are
- requested
-
-
-
- Request the contents of an inventory folder
-
- The folder to search
- The folder owners
- true to return s contained in folder
- true to return s containd in folder
- the sort order to return items in
-
-
-
-
- Returns the UUID of the folder (category) that defaults to
- containing 'type'. The folder is not necessarily only for that
- type
-
- This will return the root folder if one does not exist
-
- The UUID of the desired folder if found, the UUID of the RootFolder
- if not found, or UUID.Zero on failure
-
-
-
- Find an object in inventory using a specific path to search
-
- The folder to begin the search in
- The object owners
- A string path to search
- milliseconds to wait for a reply
- Found items or if
- timeout occurs or item is not found
-
-
-
- Find inventory items by path
-
- The folder to begin the search in
- The object owners
- A string path to search, folders/objects separated by a '/'
- Results are sent to the event
-
-
-
- Search inventory Store object for an item or folder
-
- The folder to begin the search in
- An array which creates a path to search
- Number of levels below baseFolder to conduct searches
- if True, will stop searching after first match is found
- A list of inventory items found
-
-
-
- Move an inventory item or folder to a new location
-
- The item or folder to move
- The to move item or folder to
-
-
-
- Move an inventory item or folder to a new location and change its name
-
- The item or folder to move
- The to move item or folder to
- The name to change the item or folder to
-
-
-
- Move and rename a folder
-
- The source folders
- The destination folders
- The name to change the folder to
-
-
-
- Update folder properties
-
- of the folder to update
- Sets folder's parent to
- Folder name
- Folder type
-
-
-
- Move a folder
-
- The source folders
- The destination folders
-
-
-
- Move multiple folders, the keys in the Dictionary parameter,
- to a new parents, the value of that folder's key.
-
- A Dictionary containing the
- of the source as the key, and the
- of the destination as the value
-
-
-
- Move an inventory item to a new folder
-
- The of the source item to move
- The of the destination folder
-
-
-
- Move and rename an inventory item
-
- The of the source item to move
- The of the destination folder
- The name to change the folder to
-
-
-
- Move multiple inventory items to new locations
-
- A Dictionary containing the
- of the source item as the key, and the
- of the destination folder as the value
-
-
-
- Remove descendants of a folder
-
- The of the folder
-
-
-
- Remove a single item from inventory
-
- The of the inventory item to remove
-
-
-
- Remove a folder from inventory
-
- The of the folder to remove
-
-
-
- Remove multiple items or folders from inventory
-
- A List containing the s of items to remove
- A List containing the s of the folders to remove
-
-
-
- Empty the Lost and Found folder
-
-
-
-
- Empty the Trash folder
-
-
-
-
-
-
-
-
-
-
- Proper use is to upload the inventory's asset first, then provide the Asset's TransactionID here.
-
-
-
-
-
-
-
-
-
-
-
-
- Proper use is to upload the inventory's asset first, then provide the Asset's TransactionID here.
-
-
-
-
-
-
-
- Creates a new inventory folder
-
- ID of the folder to put this folder in
- Name of the folder to create
- The UUID of the newly created folder
-
-
-
- Creates a new inventory folder
-
- ID of the folder to put this folder in
- Name of the folder to create
- Sets this folder as the default folder
- for new assets of the specified type. Use AssetType.Unknown
- to create a normal folder, otherwise it will likely create a
- duplicate of an existing folder type
- The UUID of the newly created folder
- If you specify a preferred type of AsseType.Folder
- it will create a new root folder which may likely cause all sorts
- of strange problems
-
-
-
- Create an inventory item and upload asset data
-
- Asset data
- Inventory item name
- Inventory item description
- Asset type
- Inventory type
- Put newly created inventory in this folder
- Delegate that will receive feedback on success or failure
-
-
-
- Create an inventory item and upload asset data
-
- Asset data
- Inventory item name
- Inventory item description
- Asset type
- Inventory type
- Put newly created inventory in this folder
- Permission of the newly created item
- (EveryoneMask, GroupMask, and NextOwnerMask of Permissions struct are supported)
- Delegate that will receive feedback on success or failure
-
-
-
- Creates inventory link to another inventory item or folder
-
- Put newly created link in folder with this UUID
- Inventory item or folder
- Method to call upon creation of the link
-
-
-
- Creates inventory link to another inventory item
-
- Put newly created link in folder with this UUID
- Original inventory item
- Method to call upon creation of the link
-
-
-
- Creates inventory link to another inventory folder
-
- Put newly created link in folder with this UUID
- Original inventory folder
- Method to call upon creation of the link
-
-
-
- Creates inventory link to another inventory item or folder
-
- Put newly created link in folder with this UUID
- Original item's UUID
- Name
- Description
- Asset Type
- Inventory Type
- Transaction UUID
- Method to call upon creation of the link
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Request a copy of an asset embedded within a notecard
-
- Usually UUID.Zero for copying an asset from a notecard
- UUID of the notecard to request an asset from
- Target folder for asset to go to in your inventory
- UUID of the embedded asset
- callback to run when item is copied to inventory
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Save changes to notecard embedded in object contents
-
- Encoded notecard asset data
- Notecard UUID
- Object's UUID
- Called upon finish of the upload with status information
-
-
-
- Upload new gesture asset for an inventory gesture item
-
- Encoded gesture asset
- Gesture inventory UUID
- Callback whick will be called when upload is complete
-
-
-
- Update an existing script in an agents Inventory
-
- A byte[] array containing the encoded scripts contents
- the itemID of the script
- if true, sets the script content to run on the mono interpreter
-
-
-
-
- Update an existing script in an task Inventory
-
- A byte[] array containing the encoded scripts contents
- the itemID of the script
- UUID of the prim containting the script
- if true, sets the script content to run on the mono interpreter
- if true, sets the script to running
-
-
-
-
- Rez an object from inventory
-
- Simulator to place object in
- Rotation of the object when rezzed
- Vector of where to place object
- InventoryItem object containing item details
-
-
-
- Rez an object from inventory
-
- Simulator to place object in
- Rotation of the object when rezzed
- Vector of where to place object
- InventoryItem object containing item details
- UUID of group to own the object
-
-
-
- Rez an object from inventory
-
- Simulator to place object in
- Rotation of the object when rezzed
- Vector of where to place object
- InventoryItem object containing item details
- UUID of group to own the object
- User defined queryID to correlate replies
- If set to true, the CreateSelected flag
- will be set on the rezzed object
-
-
-
- DeRez an object from the simulator to the agents Objects folder in the agents Inventory
-
- The simulator Local ID of the object
- If objectLocalID is a child primitive in a linkset, the entire linkset will be derezzed
-
-
-
- DeRez an object from the simulator and return to inventory
-
- The simulator Local ID of the object
- The type of destination from the enum
- The destination inventory folders -or-
- if DeRezzing object to a tasks Inventory, the Tasks
- The transaction ID for this request which
- can be used to correlate this request with other packets
- If objectLocalID is a child primitive in a linkset, the entire linkset will be derezzed
-
-
-
- Rez an item from inventory to its previous simulator location
-
-
-
-
-
-
-
-
- Give an inventory item to another avatar
-
- The of the item to give
- The name of the item
- The type of the item from the enum
- The of the recipient
- true to generate a beameffect during transfer
-
-
-
- Give an inventory Folder with contents to another avatar
-
- The of the Folder to give
- The name of the folder
- The type of the item from the enum
- The of the recipient
- true to generate a beameffect during transfer
-
-
-
- Copy or move an from agent inventory to a task (primitive) inventory
-
- The target object
- The item to copy or move from inventory
-
- For items with copy permissions a copy of the item is placed in the tasks inventory,
- for no-copy items the object is moved to the tasks inventory
-
-
-
- Retrieve a listing of the items contained in a task (Primitive)
-
- The tasks
- The tasks simulator local ID
- milliseconds to wait for reply from simulator
- A list containing the inventory items inside the task or null
- if a timeout occurs
- This request blocks until the response from the simulator arrives
- or timeoutMS is exceeded
-
-
-
- Request the contents of a tasks (primitives) inventory from the
- current simulator
-
- The LocalID of the object
-
-
-
-
- Request the contents of a tasks (primitives) inventory
-
- The simulator Local ID of the object
- A reference to the simulator object that contains the object
-
-
-
-
- Move an item from a tasks (Primitive) inventory to the specified folder in the avatars inventory
-
- LocalID of the object in the simulator
- UUID of the task item to move
- The ID of the destination folder in this agents inventory
- Simulator Object
- Raises the event
-
-
-
- Remove an item from an objects (Prim) Inventory
-
- LocalID of the object in the simulator
- UUID of the task item to remove
- Simulator Object
- You can confirm the removal by comparing the tasks inventory serial before and after the
- request with the request combined with
- the event
-
-
-
- Copy an InventoryScript item from the Agents Inventory into a primitives task inventory
-
- An unsigned integer representing a primitive being simulated
- An which represents a script object from the agents inventory
- true to set the scripts running state to enabled
- A Unique Transaction ID
-
- The following example shows the basic steps necessary to copy a script from the agents inventory into a tasks inventory
- and assumes the script exists in the agents inventory.
-
- uint primID = 95899503; // Fake prim ID
- UUID scriptID = UUID.Parse("92a7fe8a-e949-dd39-a8d8-1681d8673232"); // Fake Script UUID in Inventory
-
- Client.Inventory.FolderContents(Client.Inventory.FindFolderForType(AssetType.LSLText), Client.Self.AgentID,
- false, true, InventorySortOrder.ByName, 10000);
-
- Client.Inventory.RezScript(primID, (InventoryItem)Client.Inventory.Store[scriptID]);
-
-
-
-
-
- Request the running status of a script contained in a task (primitive) inventory
-
- The ID of the primitive containing the script
- The ID of the script
- The event can be used to obtain the results of the
- request
-
-
-
-
- Send a request to set the running state of a script contained in a task (primitive) inventory
-
- The ID of the primitive containing the script
- The ID of the script
- true to set the script running, false to stop a running script
- To verify the change you can use the method combined
- with the event
-
-
-
- Create a CRC from an InventoryItem
-
- The source InventoryItem
- A uint representing the source InventoryItem as a CRC
-
-
-
- Reverses a cheesy XORing with a fixed UUID to convert a shadow_id to an asset_id
-
- Obfuscated shadow_id value
- Deobfuscated asset_id value
-
-
-
- Does a cheesy XORing with a fixed UUID to convert an asset_id to a shadow_id
-
- asset_id value to obfuscate
- Obfuscated shadow_id value
-
-
-
- Wrapper for creating a new object
-
- The type of item from the enum
- The of the newly created object
- An object with the type and id passed
-
-
-
- Parse the results of a RequestTaskInventory() response
-
- A string which contains the data from the task reply
- A List containing the items contained within the tasks inventory
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
-
- UpdateCreateInventoryItem packets are received when a new inventory item
- is created. This may occur when an object that's rezzed in world is
- taken into inventory, when an item is created using the CreateInventoryItem
- packet, or when an object is purchased
-
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Raised when the simulator sends us data containing
- ...
-
-
- Raised when the simulator sends us data containing
- ...
-
-
- Raised when the simulator sends us data containing
- an inventory object sent by another avatar or primitive
-
-
- Raised when the simulator sends us data containing
- ...
-
-
- Raised when the simulator sends us data containing
- ...
-
-
- Raised when the simulator sends us data containing
- ...
-
-
- Raised when the simulator sends us data containing
- ...
-
-
- Raised when the simulator sends us data containing
- ...
-
-
-
- Get this agents Inventory data
-
-
-
-
- Callback for inventory item creation finishing
-
- Whether the request to create an inventory
- item succeeded or not
- Inventory item being created. If success is
- false this will be null
-
-
-
- Callback for an inventory item being create from an uploaded asset
-
- true if inventory item creation was successful
-
-
-
-
-
-
-
-
-
-
-
-
- Reply received when uploading an inventory asset
-
- Has upload been successful
- Error message if upload failed
- Inventory asset UUID
- New asset UUID
-
-
-
- Delegate that is invoked when script upload is completed
-
- Has upload succeded (note, there still might be compile errors)
- Upload status message
- Is compilation successful
- If compilation failed, list of error messages, null on compilation success
- Script inventory UUID
- Script's new asset UUID
-
-
- Set to true to accept offer, false to decline it
-
-
- The folder to accept the inventory into, if null default folder for will be used
-
-
-
- Callback when an inventory object is accepted and received from a
- task inventory. This is the callback in which you actually get
- the ItemID, as in ObjectOfferedCallback it is null when received
- from a task.
-
-
-
-
- Holds group information for Avatars such as those you might find in a profile
-
-
-
- true of Avatar accepts group notices
-
-
- Groups Key
-
-
- Texture Key for groups insignia
-
-
- Name of the group
-
-
- Powers avatar has in the group
-
-
- Avatars Currently selected title
-
-
- true of Avatar has chosen to list this in their profile
-
-
-
- Contains an animation currently being played by an agent
-
-
-
- The ID of the animation asset
-
-
- A number to indicate start order of currently playing animations
- On Linden Grids this number is unique per region, with OpenSim it is per client
-
-
-
-
-
-
- Holds group information on an individual profile pick
-
-
-
-
- Retrieve friend status notifications, and retrieve avatar names and
- profiles
-
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the AvatarAnimation Event
- An AvatarAnimationEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the AvatarAppearance Event
- A AvatarAppearanceEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the UUIDNameReply Event
- A UUIDNameReplyEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the AvatarInterestsReply Event
- A AvatarInterestsReplyEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the AvatarPropertiesReply Event
- A AvatarPropertiesReplyEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the AvatarGroupsReply Event
- A AvatarGroupsReplyEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the AvatarPickerReply Event
- A AvatarPickerReplyEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the ViewerEffectPointAt Event
- A ViewerEffectPointAtEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the ViewerEffectLookAt Event
- A ViewerEffectLookAtEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the ViewerEffect Event
- A ViewerEffectEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the AvatarPicksReply Event
- A AvatarPicksReplyEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the PickInfoReply Event
- A PickInfoReplyEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the AvatarClassifiedReply Event
- A AvatarClassifiedReplyEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers, null of no subscribers
-
-
- Raises the ClassifiedInfoReply Event
- A ClassifiedInfoReplyEventArgs object containing
- the data sent from the simulator
-
-
- Thread sync lock object
-
-
-
- Represents other avatars
-
-
-
-
- Tracks the specified avatar on your map
- Avatar ID to track
-
-
-
- Request a single avatar name
-
- The avatar key to retrieve a name for
-
-
-
- Request a list of avatar names
-
- The avatar keys to retrieve names for
-
-
-
- Start a request for Avatar Properties
-
-
-
-
-
- Search for an avatar (first name, last name)
-
- The name to search for
- An ID to associate with this query
-
-
-
- Start a request for Avatar Picks
-
- UUID of the avatar
-
-
-
- Start a request for Avatar Classifieds
-
- UUID of the avatar
-
-
-
- Start a request for details of a specific profile pick
-
- UUID of the avatar
- UUID of the profile pick
-
-
-
- Start a request for details of a specific profile classified
-
- UUID of the avatar
- UUID of the profile classified
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
-
- Crossed region handler for message that comes across the EventQueue. Sent to an agent
- when the agent crosses a sim border into a new region.
-
- The message key
- the IMessage object containing the deserialized data sent from the simulator
- The which originated the packet
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Raised when the simulator sends us data containing
- an agents animation playlist
-
-
- Raised when the simulator sends us data containing
- the appearance information for an agent
-
-
- Raised when the simulator sends us data containing
- agent names/id values
-
-
- Raised when the simulator sends us data containing
- the interests listed in an agents profile
-
-
- Raised when the simulator sends us data containing
- profile property information for an agent
-
-
- Raised when the simulator sends us data containing
- the group membership an agent is a member of
-
-
- Raised when the simulator sends us data containing
- name/id pair
-
-
- Raised when the simulator sends us data containing
- the objects and effect when an agent is pointing at
-
-
- Raised when the simulator sends us data containing
- the objects and effect when an agent is looking at
-
-
- Raised when the simulator sends us data containing
- an agents viewer effect information
-
-
- Raised when the simulator sends us data containing
- the top picks from an agents profile
-
-
- Raised when the simulator sends us data containing
- the Pick details
-
-
- Raised when the simulator sends us data containing
- the classified ads an agent has placed
-
-
- Raised when the simulator sends us data containing
- the details of a classified ad
-
-
- Provides data for the event
- The event occurs when the simulator sends
- the animation playlist for an agent
-
- The following code example uses the and
- properties to display the animation playlist of an avatar on the window.
-
- // subscribe to the event
- Client.Avatars.AvatarAnimation += Avatars_AvatarAnimation;
-
- private void Avatars_AvatarAnimation(object sender, AvatarAnimationEventArgs e)
- {
- // create a dictionary of "known" animations from the Animations class using System.Reflection
- Dictionary<UUID, string> systemAnimations = new Dictionary<UUID, string>();
- Type type = typeof(Animations);
- System.Reflection.FieldInfo[] fields = type.GetFields(System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.Static);
- foreach (System.Reflection.FieldInfo field in fields)
- {
- systemAnimations.Add((UUID)field.GetValue(type), field.Name);
- }
-
- // find out which animations being played are known animations and which are assets
- foreach (Animation animation in e.Animations)
- {
- if (systemAnimations.ContainsKey(animation.AnimationID))
- {
- Console.WriteLine("{0} is playing {1} ({2}) sequence {3}", e.AvatarID,
- systemAnimations[animation.AnimationID], animation.AnimationSequence);
- }
- else
- {
- Console.WriteLine("{0} is playing {1} (Asset) sequence {2}", e.AvatarID,
- animation.AnimationID, animation.AnimationSequence);
- }
- }
- }
-
-
-
-
-
- Construct a new instance of the AvatarAnimationEventArgs class
-
- The ID of the agent
- The list of animations to start
-
-
- Get the ID of the agent
-
-
- Get the list of animations to start
-
-
- Provides data for the event
- The event occurs when the simulator sends
- the appearance data for an avatar
-
- The following code example uses the and
- properties to display the selected shape of an avatar on the window.
-
- // subscribe to the event
- Client.Avatars.AvatarAppearance += Avatars_AvatarAppearance;
-
- // handle the data when the event is raised
- void Avatars_AvatarAppearance(object sender, AvatarAppearanceEventArgs e)
- {
- Console.WriteLine("The Agent {0} is using a {1} shape.", e.AvatarID, (e.VisualParams[31] > 0) : "male" ? "female")
- }
-
-
-
-
-
- Construct a new instance of the AvatarAppearanceEventArgs class
-
- The ID of the agent
- true of the agent is a trial account
- The default agent texture
- The agents appearance layer textures
- The for the agent
-
-
- Get the ID of the agent
-
-
- true if the agent is a trial account
-
-
- Get the default agent texture
-
-
- Get the agents appearance layer textures
-
-
- Get the for the agent
-
-
- Represents the interests from the profile of an agent
-
-
- Get the ID of the agent
-
-
- The properties of an agent
-
-
- Get the ID of the agent
-
-
- Get the ID of the agent
-
-
- Get the ID of the agent
-
-
- Get the ID of the avatar
-
-
-
- Sent to the client to indicate a teleport request has completed
-
-
-
- The of the agent
-
-
-
-
-
- The simulators handle the agent teleported to
-
-
- A Uri which contains a list of Capabilities the simulator supports
-
-
- Indicates the level of access required
- to access the simulator, or the content rating, or the simulators
- map status
-
-
- The IP Address of the simulator
-
-
- The UDP Port the simulator will listen for UDP traffic on
-
-
- Status flags indicating the state of the Agent upon arrival, Flying, etc.
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- Sent to the viewer when a neighboring simulator is requesting the agent make a connection to it.
-
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- A message sent to the client which indicates a teleport request has failed
- and contains some information on why it failed
-
-
-
-
-
-
- A string key of the reason the teleport failed e.g. CouldntTPCloser
- Which could be used to look up a value in a dictionary or enum
-
-
- The of the Agent
-
-
- A string human readable message containing the reason
- An example: Could not teleport closer to destination
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- Contains a list of prim owner information for a specific parcel in a simulator
-
-
- A Simulator will always return at least 1 entry
- If agent does not have proper permission the OwnerID will be UUID.Zero
- If agent does not have proper permission OR there are no primitives on parcel
- the DataBlocksExtended map will not be sent from the simulator
-
-
-
- An Array of objects
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- Prim ownership information for a specified owner on a single parcel
-
-
-
- The of the prim owner,
- UUID.Zero if agent has no permission to view prim owner information
-
-
- The total number of prims
-
-
- True if the OwnerID is a
-
-
- True if the owner is online
- This is no longer used by the LL Simulators
-
-
- The date the most recent prim was rezzed
-
-
-
- The details of a single parcel in a region, also contains some regionwide globals
-
-
-
- Simulator-local ID of this parcel
-
-
- Maximum corner of the axis-aligned bounding box for this
- parcel
-
-
- Minimum corner of the axis-aligned bounding box for this
- parcel
-
-
- Total parcel land area
-
-
-
-
-
- Key of authorized buyer
-
-
- Bitmap describing land layout in 4x4m squares across the
- entire region
-
-
-
-
-
- Date land was claimed
-
-
- Appears to always be zero
-
-
- Parcel Description
-
-
-
-
-
-
-
-
- Total number of primitives owned by the parcel group on
- this parcel
-
-
- Whether the land is deeded to a group or not
-
-
-
-
-
- Maximum number of primitives this parcel supports
-
-
- The Asset UUID of the Texture which when applied to a
- primitive will display the media
-
-
- A URL which points to any Quicktime supported media type
-
-
- A byte, if 0x1 viewer should auto scale media to fit object
-
-
- URL For Music Stream
-
-
- Parcel Name
-
-
- Autoreturn value in minutes for others' objects
-
-
-
-
-
- Total number of other primitives on this parcel
-
-
- UUID of the owner of this parcel
-
-
- Total number of primitives owned by the parcel owner on
- this parcel
-
-
-
-
-
- How long is pass valid for
-
-
- Price for a temporary pass
-
-
-
-
-
-
-
-
-
-
-
- This field is no longer used
-
-
- The result of a request for parcel properties
-
-
- Sale price of the parcel, only useful if ForSale is set
- The SalePrice will remain the same after an ownership
- transfer (sale), so it can be used to see the purchase price after
- a sale if the new owner has not changed it
-
-
-
- Number of primitives your avatar is currently
- selecting and sitting on in this parcel
-
-
-
-
-
-
-
- A number which increments by 1, starting at 0 for each ParcelProperties request.
- Can be overriden by specifying the sequenceID with the ParcelPropertiesRequest being sent.
- a Negative number indicates the action in has occurred.
-
-
-
- Maximum primitives across the entire simulator
-
-
- Total primitives across the entire simulator
-
-
-
-
-
- Key of parcel snapshot
-
-
- Parcel ownership status
-
-
- Total number of primitives on this parcel
-
-
-
-
-
-
-
-
- TRUE of region denies access to age unverified users
-
-
- A description of the media
-
-
- An Integer which represents the height of the media
-
-
- An integer which represents the width of the media
-
-
- A boolean, if true the viewer should loop the media
-
-
- A string which contains the mime type of the media
-
-
- true to obscure (hide) media url
-
-
- true to obscure (hide) music url
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
- A message sent from the viewer to the simulator to updated a specific parcels settings
-
-
- The of the agent authorized to purchase this
- parcel of land or a NULL if the sale is authorized to anyone
-
-
- true to enable auto scaling of the parcel media
-
-
- The category of this parcel used when search is enabled to restrict
- search results
-
-
- A string containing the description to set
-
-
- The of the which allows for additional
- powers and restrictions.
-
-
- The which specifies how avatars which teleport
- to this parcel are handled
-
-
- The LocalID of the parcel to update settings on
-
-
- A string containing the description of the media which can be played
- to visitors
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
- Base class used for the RemoteParcelRequest message
-
-
-
- A message sent from the viewer to the simulator to request information
- on a remote parcel
-
-
-
- Local sim position of the parcel we are looking up
-
-
- Region handle of the parcel we are looking up
-
-
- Region of the parcel we are looking up
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- A message sent from the simulator to the viewer in response to a
- which will contain parcel information
-
-
-
- The grid-wide unique parcel ID
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- A message containing a request for a remote parcel from a viewer, or a response
- from the simulator to that request
-
-
-
- The request or response details block
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- A message sent from the simulator to an agent which contains
- the groups the agent is in
-
-
-
- The Agent receiving the message
-
-
- An array containing information
- for each the agent is a member of
-
-
- An array containing information
- for each the agent is a member of
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
- Group Details specific to the agent
-
-
- true of the agent accepts group notices
-
-
- The agents tier contribution to the group
-
-
- The Groups
-
-
- The of the groups insignia
-
-
- The name of the group
-
-
- The aggregate permissions the agent has in the group for all roles the agent
- is assigned
-
-
- An optional block containing additional agent specific information
-
-
- true of the agent allows this group to be
- listed in their profile
-
-
-
- A message sent from the viewer to the simulator which
- specifies the language and permissions for others to detect
- the language specified
-
-
-
- A string containng the default language
- to use for the agent
-
-
- true of others are allowed to
- know the language setting
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- An EventQueue message sent from the simulator to an agent when the agent
- leaves a group
-
-
-
-
- An Array containing the AgentID and GroupID
-
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
- An object containing the Agents UUID, and the Groups UUID
-
-
- The ID of the Agent leaving the group
-
-
- The GroupID the Agent is leaving
-
-
- Base class for Asset uploads/results via Capabilities
-
-
-
- The request state
-
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- A message sent from the viewer to the simulator to request a temporary upload capability
- which allows an asset to be uploaded
-
-
-
- The Capability URL sent by the simulator to upload the baked texture to
-
-
-
- A message sent from the simulator that will inform the agent the upload is complete,
- and the UUID of the uploaded asset
-
-
-
- The uploaded texture asset ID
-
-
-
- A message sent from the viewer to the simulator to request a temporary
- capability URI which is used to upload an agents baked appearance textures
-
-
-
- Object containing request or response
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- A message sent from the simulator which indicates the minimum version required for
- using voice chat
-
-
-
- Major Version Required
-
-
- Minor version required
-
-
- The name of the region sending the version requrements
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- A message sent from the simulator to the viewer containing the
- voice server URI
-
-
-
- The Parcel ID which the voice server URI applies
-
-
- The name of the region
-
-
- A uri containing the server/channel information
- which the viewer can utilize to participate in voice conversations
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- A message sent by the viewer to the simulator to request a temporary
- capability for a script contained with in a Tasks inventory to be updated
-
-
-
- Object containing request or response
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- A message sent from the simulator to the viewer to indicate
- a Tasks scripts status.
-
-
-
- The Asset ID of the script
-
-
- True of the script is compiled/ran using the mono interpreter, false indicates it
- uses the older less efficient lsl2 interprter
-
-
- The Task containing the scripts
-
-
- true of the script is in a running state
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- A message containing the request/response used for updating a gesture
- contained with an agents inventory
-
-
-
- Object containing request or response
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- A message request/response which is used to update a notecard contained within
- a tasks inventory
-
-
-
- The of the Task containing the notecard asset to update
-
-
- The notecard assets contained in the tasks inventory
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- A reusable class containing a message sent from the viewer to the simulator to request a temporary uploader capability
- which is used to update an asset in an agents inventory
-
-
-
-
- The Notecard AssetID to replace
-
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- A message containing the request/response used for updating a notecard
- contained with an agents inventory
-
-
-
- Object containing request or response
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- A message sent from the simulator to the viewer which indicates
- an error occurred while attempting to update a script in an agents or tasks
- inventory
-
-
-
- true of the script was successfully compiled by the simulator
-
-
- A string containing the error which occured while trying
- to update the script
-
-
- A new AssetID assigned to the script
-
-
-
- A message sent from the viewer to the simulator
- requesting the update of an existing script contained
- within a tasks inventory
-
-
-
- if true, set the script mode to running
-
-
- The scripts InventoryItem ItemID to update
-
-
- A lowercase string containing either "mono" or "lsl2" which
- specifies the script is compiled and ran on the mono runtime, or the older
- lsl runtime
-
-
- The tasks which contains the script to update
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- A message containing either the request or response used in updating a script inside
- a tasks inventory
-
-
-
- Object containing request or response
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- Response from the simulator to notify the viewer the upload is completed, and
- the UUID of the script asset and its compiled status
-
-
-
- The uploaded texture asset ID
-
-
- true of the script was compiled successfully
-
-
-
- A message sent from a viewer to the simulator requesting a temporary uploader capability
- used to update a script contained in an agents inventory
-
-
-
- The existing asset if of the script in the agents inventory to replace
-
-
- The language of the script
- Defaults to lsl version 2, "mono" might be another possible option
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- A message containing either the request or response used in updating a script inside
- an agents inventory
-
-
-
- Object containing request or response
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
- Base class for Map Layers via Capabilities
-
-
-
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- Sent by an agent to the capabilities server to request map layers
-
-
-
-
- A message sent from the simulator to the viewer which contains an array of map images and their grid coordinates
-
-
-
- An array containing LayerData items
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- An object containing map location details
-
-
-
- The Asset ID of the regions tile overlay
-
-
- The grid location of the southern border of the map tile
-
-
- The grid location of the western border of the map tile
-
-
- The grid location of the eastern border of the map tile
-
-
- The grid location of the northern border of the map tile
-
-
- Object containing request or response
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- New as of 1.23 RC1, no details yet.
-
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
- A string containing the method used
-
-
-
- A request sent from an agent to the Simulator to begin a new conference.
- Contains a list of Agents which will be included in the conference
-
-
-
- An array containing the of the agents invited to this conference
-
-
- The conferences Session ID
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- A moderation request sent from a conference moderator
- Contains an agent and an optional action to take
-
-
-
- The Session ID
-
-
-
-
-
- A list containing Key/Value pairs, known valid values:
- key: text value: true/false - allow/disallow specified agents ability to use text in session
- key: voice value: true/false - allow/disallow specified agents ability to use voice in session
-
- "text" or "voice"
-
-
-
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- A message sent from the agent to the simulator which tells the
- simulator we've accepted a conference invitation
-
-
-
- The conference SessionID
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
- Key of sender
-
-
- Name of sender
-
-
- Key of destination avatar
-
-
- ID of originating estate
-
-
- Key of originating region
-
-
- Coordinates in originating region
-
-
- Instant message type
-
-
- Group IM session toggle
-
-
- Key of IM session, for Group Messages, the groups UUID
-
-
- Timestamp of the instant message
-
-
- Instant message text
-
-
- Whether this message is held for offline avatars
-
-
- Context specific packed data
-
-
- Is this invitation for voice group/conference chat
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- Sent from the simulator to the viewer.
-
- When an agent initially joins a session the AgentUpdatesBlock object will contain a list of session members including
- a boolean indicating they can use voice chat in this session, a boolean indicating they are allowed to moderate
- this session, and lastly a string which indicates another agent is entering the session with the Transition set to "ENTER"
-
- During the session lifetime updates on individuals are sent. During the update the booleans sent during the initial join are
- excluded with the exception of the Transition field. This indicates a new user entering or exiting the session with
- the string "ENTER" or "LEAVE" respectively.
-
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- An EventQueue message sent when the agent is forcibly removed from a chatterbox session
-
-
-
-
- A string containing the reason the agent was removed
-
-
-
-
- The ChatterBoxSession's SessionID
-
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
-
-
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- A message sent from the viewer to the simulator which
- specifies that the user has changed current URL
- of the specific media on a prim face
-
-
-
-
- New URL
-
-
-
-
- Prim UUID where navigation occured
-
-
-
-
- Face index
-
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
- Base class used for the ObjectMedia message
-
-
-
- Message used to retrive prim media data
-
-
-
-
- Prim UUID
-
-
-
-
- Requested operation, either GET or UPDATE
-
-
-
-
- Serialize object
-
- Serialized object as OSDMap
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- Message used to update prim media data
-
-
-
-
- Prim UUID
-
-
-
-
- Array of media entries indexed by face number
-
-
-
-
- Media version string
-
-
-
-
- Serialize object
-
- Serialized object as OSDMap
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- Message used to update prim media data
-
-
-
-
- Prim UUID
-
-
-
-
- Array of media entries indexed by face number
-
-
-
-
- Requested operation, either GET or UPDATE
-
-
-
-
- Serialize object
-
- Serialized object as OSDMap
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- Message for setting or getting per face MediaEntry
-
-
-
- The request or response details block
-
-
-
- Serialize the object
-
- An containing the objects data
-
-
-
- Deserialize the message
-
- An containing the data
-
-
-
- Represents a texture
-
-
-
- A object containing image data
-
-
-
-
-
-
-
-
- Initializes a new instance of an AssetTexture object
-
-
-
- Initializes a new instance of an AssetTexture object
-
- A unique specific to this asset
- A byte array containing the raw asset data
-
-
-
- Initializes a new instance of an AssetTexture object
-
- A object containing texture data
-
-
-
- Populates the byte array with a JPEG2000
- encoded image created from the data in
-
-
-
-
- Decodes the JPEG2000 data in AssetData
to the
- object
-
- True if the decoding was successful, otherwise false
-
-
-
- Decodes the begin and end byte positions for each quality layer in
- the image
-
-
-
-
- Override the base classes AssetType
-
-
-
- Add a custom decoder callback
-
- The key of the field to decode
- The custom decode handler
-
-
-
- Remove a custom decoder callback
-
- The key of the field to decode
- The custom decode handler
-
-
-
- Creates a formatted string containing the values of a Packet
-
- The Packet
- A formatted string of values of the nested items in the Packet object
-
-
-
- Decode an IMessage object into a beautifully formatted string
-
- The IMessage object
- Recursion level (used for indenting)
- A formatted string containing the names and values of the source object
-
-
-
- A custom decoder callback
-
- The key of the object
- the data to decode
- A string represending the fieldData
-
-
-
- Static helper functions and global variables
-
-
-
- This header flag signals that ACKs are appended to the packet
-
-
- This header flag signals that this packet has been sent before
-
-
- This header flags signals that an ACK is expected for this packet
-
-
- This header flag signals that the message is compressed using zerocoding
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Given an X/Y location in absolute (grid-relative) terms, a region
- handle is returned along with the local X/Y location in that region
-
- The absolute X location, a number such as
- 255360.35
- The absolute Y location, a number such as
- 255360.35
- The sim-local X position of the global X
- position, a value from 0.0 to 256.0
- The sim-local Y position of the global Y
- position, a value from 0.0 to 256.0
- A 64-bit region handle that can be used to teleport to
-
-
-
- Converts a floating point number to a terse string format used for
- transmitting numbers in wearable asset files
-
- Floating point number to convert to a string
- A terse string representation of the input number
-
-
-
- Convert a variable length field (byte array) to a string, with a
- field name prepended to each line of the output
-
- If the byte array has unprintable characters in it, a
- hex dump will be written instead
- The StringBuilder object to write to
- The byte array to convert to a string
- A field name to prepend to each line of output
-
-
-
- Decode a zerocoded byte array, used to decompress packets marked
- with the zerocoded flag
-
- Any time a zero is encountered, the next byte is a count
- of how many zeroes to expand. One zero is encoded with 0x00 0x01,
- two zeroes is 0x00 0x02, three zeroes is 0x00 0x03, etc. The
- first four bytes are copied directly to the output buffer.
-
- The byte array to decode
- The length of the byte array to decode. This
- would be the length of the packet up to (but not including) any
- appended ACKs
- The output byte array to decode to
- The length of the output buffer
-
-
-
- Encode a byte array with zerocoding. Used to compress packets marked
- with the zerocoded flag. Any zeroes in the array are compressed down
- to a single zero byte followed by a count of how many zeroes to expand
- out. A single zero becomes 0x00 0x01, two zeroes becomes 0x00 0x02,
- three zeroes becomes 0x00 0x03, etc. The first four bytes are copied
- directly to the output buffer.
-
- The byte array to encode
- The length of the byte array to encode
- The output byte array to encode to
- The length of the output buffer
-
-
-
- Calculates the CRC (cyclic redundancy check) needed to upload inventory.
-
- Creation date
- Sale type
- Inventory type
- Type
- Asset ID
- Group ID
- Sale price
- Owner ID
- Creator ID
- Item ID
- Folder ID
- Everyone mask (permissions)
- Flags
- Next owner mask (permissions)
- Group mask (permissions)
- Owner mask (permissions)
- The calculated CRC
-
-
-
- Attempts to load a file embedded in the assembly
-
- The filename of the resource to load
- A Stream for the requested file, or null if the resource
- was not successfully loaded
-
-
-
- Attempts to load a file either embedded in the assembly or found in
- a given search path
-
- The filename of the resource to load
- An optional path that will be searched if
- the asset is not found embedded in the assembly
- A Stream for the requested file, or null if the resource
- was not successfully loaded
-
-
-
- Converts a list of primitives to an object that can be serialized
- with the LLSD system
-
- Primitives to convert to a serializable object
- An object that can be serialized with LLSD
-
-
-
- Deserializes OSD in to a list of primitives
-
- Structure holding the serialized primitive list,
- must be of the SDMap type
- A list of deserialized primitives
-
-
-
- Converts a struct or class object containing fields only into a key value separated string
-
- The struct object
- A string containing the struct fields as the keys, and the field value as the value separated
-
-
- // Add the following code to any struct or class containing only fields to override the ToString()
- // method to display the values of the passed object
-
- /// Print the struct data as a string
- ///A string containing the field name, and field value
- public override string ToString()
- {
- return Helpers.StructToString(this);
- }
-
-
-
-
-
- Passed to Logger.Log() to identify the severity of a log entry
-
-
-
- No logging information will be output
-
-
- Non-noisy useful information, may be helpful in
- debugging a problem
-
-
- A non-critical error occurred. A warning will not
- prevent the rest of the library from operating as usual,
- although it may be indicative of an underlying issue
-
-
- A critical error has occurred. Generally this will
- be followed by the network layer shutting down, although the
- stability of the library after an error is uncertain
-
-
- Used for internal testing, this logging level can
- generate very noisy (long and/or repetitive) messages. Don't
- pass this to the Log() function, use DebugLog() instead.
-
-
-
- =
-
-
- Number of times we've received an unknown CAPS exception in series.
-
-
- For exponential backoff on error.
-
-
-
- Constants for the archiving module
-
-
-
-
- The location of the archive control file
-
-
-
-
- Path for the assets held in an archive
-
-
-
-
- Path for the prims file
-
-
-
-
- Path for terrains. Technically these may be assets, but I think it's quite nice to split them out.
-
-
-
-
- Path for region settings.
-
-
-
-
- The character the separates the uuid from extension information in an archived asset filename
-
-
-
-
- Extensions used for asset types in the archive
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Thrown when a packet could not be successfully deserialized
-
-
-
-
- Default constructor
-
-
-
-
- Constructor that takes an additional error message
-
- An error message to attach to this exception
-
-
-
- The header of a message template packet. Holds packet flags, sequence
- number, packet ID, and any ACKs that will be appended at the end of
- the packet
-
-
-
-
- Convert the AckList to a byte array, used for packet serializing
-
- Reference to the target byte array
- Beginning position to start writing to in the byte
- array, will be updated with the ending position of the ACK list
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- A block of data in a packet. Packets are composed of one or more blocks,
- each block containing one or more fields
-
-
-
-
- Create a block from a byte array
-
- Byte array containing the serialized block
- Starting position of the block in the byte array.
- This will point to the data after the end of the block when the
- call returns
-
-
-
- Serialize this block into a byte array
-
- Byte array to serialize this block into
- Starting position in the byte array to serialize to.
- This will point to the position directly after the end of the
- serialized block when the call returns
-
-
- Current length of the data in this packet
-
-
- A generic value, not an actual packet type
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- The avatar has no rights
-
-
- The avatar can see the online status of the target avatar
-
-
- The avatar can see the location of the target avatar on the map
-
-
- The avatar can modify the ojects of the target avatar
-
-
-
- This class holds information about an avatar in the friends list. There are two ways
- to interface to this class. The first is through the set of boolean properties. This is the typical
- way clients of this class will use it. The second interface is through two bitflag properties,
- TheirFriendsRights and MyFriendsRights
-
-
-
-
- Used internally when building the initial list of friends at login time
-
- System ID of the avatar being prepesented
- Rights the friend has to see you online and to modify your objects
- Rights you have to see your friend online and to modify their objects
-
-
-
- FriendInfo represented as a string
-
- A string reprentation of both my rights and my friends rights
-
-
-
- System ID of the avatar
-
-
-
-
- full name of the avatar
-
-
-
-
- True if the avatar is online
-
-
-
-
- True if the friend can see if I am online
-
-
-
-
- True if the friend can see me on the map
-
-
-
-
- True if the freind can modify my objects
-
-
-
-
- True if I can see if my friend is online
-
-
-
-
- True if I can see if my friend is on the map
-
-
-
-
- True if I can modify my friend's objects
-
-
-
-
- My friend's rights represented as bitmapped flags
-
-
-
-
- My rights represented as bitmapped flags
-
-
-
-
- This class is used to add and remove avatars from your friends list and to manage their permission.
-
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the FriendOnline event
- A FriendInfoEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the FriendOffline event
- A FriendInfoEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the FriendRightsUpdate event
- A FriendInfoEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the FriendNames event
- A FriendNamesEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the FriendshipOffered event
- A FriendshipOfferedEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the FriendshipResponse event
- A FriendshipResponseEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the FriendshipTerminated event
- A FriendshipTerminatedEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the FriendFoundReply event
- A FriendFoundReplyEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
-
- A dictionary of key/value pairs containing known friends of this avatar.
-
- The Key is the of the friend, the value is a
- object that contains detailed information including permissions you have and have given to the friend
-
-
-
-
- A Dictionary of key/value pairs containing current pending frienship offers.
-
- The key is the of the avatar making the request,
- the value is the of the request which is used to accept
- or decline the friendship offer
-
-
-
-
- Internal constructor
-
- A reference to the GridClient Object
-
-
-
- Accept a friendship request
-
- agentID of avatatar to form friendship with
- imSessionID of the friendship request message
-
-
-
- Decline a friendship request
-
- of friend
- imSessionID of the friendship request message
-
-
-
- Overload: Offer friendship to an avatar.
-
- System ID of the avatar you are offering friendship to
-
-
-
- Offer friendship to an avatar.
-
- System ID of the avatar you are offering friendship to
- A message to send with the request
-
-
-
- Terminate a friendship with an avatar
-
- System ID of the avatar you are terminating the friendship with
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
-
- Change the rights of a friend avatar.
-
- the of the friend
- the new rights to give the friend
- This method will implicitly set the rights to those passed in the rights parameter.
-
-
-
- Use to map a friends location on the grid.
-
- Friends UUID to find
-
-
-
-
- Use to track a friends movement on the grid
-
- Friends Key
-
-
-
- Ask for a notification of friend's online status
-
- Friend's UUID
-
-
-
- This handles the asynchronous response of a RequestAvatarNames call.
-
-
- names cooresponding to the the list of IDs sent the the RequestAvatarNames call.
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
-
- Populate FriendList with data from the login reply
-
- true if login was successful
- true if login request is requiring a redirect
- A string containing the response to the login request
- A string containing the reason for the request
- A object containing the decoded
- reply from the login server
-
-
- Raised when the simulator sends notification one of the members in our friends list comes online
-
-
- Raised when the simulator sends notification one of the members in our friends list goes offline
-
-
- Raised when the simulator sends notification one of the members in our friends list grants or revokes permissions
-
-
- Raised when the simulator sends us the names on our friends list
-
-
- Raised when the simulator sends notification another agent is offering us friendship
-
-
- Raised when a request we sent to friend another agent is accepted or declined
-
-
- Raised when the simulator sends notification one of the members in our friends list has terminated
- our friendship
-
-
- Raised when the simulator sends the location of a friend we have
- requested map location info for
-
-
- Contains information on a member of our friends list
-
-
-
- Construct a new instance of the FriendInfoEventArgs class
-
- The FriendInfo
-
-
- Get the FriendInfo
-
-
- Contains Friend Names
-
-
-
- Construct a new instance of the FriendNamesEventArgs class
-
- A dictionary where the Key is the ID of the Agent,
- and the Value is a string containing their name
-
-
- A dictionary where the Key is the ID of the Agent,
- and the Value is a string containing their name
-
-
- Sent when another agent requests a friendship with our agent
-
-
-
- Construct a new instance of the FriendshipOfferedEventArgs class
-
- The ID of the agent requesting friendship
- The name of the agent requesting friendship
- The ID of the session, used in accepting or declining the
- friendship offer
-
-
- Get the ID of the agent requesting friendship
-
-
- Get the name of the agent requesting friendship
-
-
- Get the ID of the session, used in accepting or declining the
- friendship offer
-
-
- A response containing the results of our request to form a friendship with another agent
-
-
-
- Construct a new instance of the FriendShipResponseEventArgs class
-
- The ID of the agent we requested a friendship with
- The name of the agent we requested a friendship with
- true if the agent accepted our friendship offer
-
-
- Get the ID of the agent we requested a friendship with
-
-
- Get the name of the agent we requested a friendship with
-
-
- true if the agent accepted our friendship offer
-
-
- Contains data sent when a friend terminates a friendship with us
-
-
-
- Construct a new instance of the FrindshipTerminatedEventArgs class
-
- The ID of the friend who terminated the friendship with us
- The name of the friend who terminated the friendship with us
-
-
- Get the ID of the agent that terminated the friendship with us
-
-
- Get the name of the agent that terminated the friendship with us
-
-
-
- Data sent in response to a request which contains the information to allow us to map the friends location
-
-
-
-
- Construct a new instance of the FriendFoundReplyEventArgs class
-
- The ID of the agent we have requested location information for
- The region handle where our friend is located
- The simulator local position our friend is located
-
-
- Get the ID of the agent we have received location information for
-
-
- Get the region handle where our mapped friend is located
-
-
- Get the simulator local position where our friend is located
-
-
-
-
-
- Looking direction, must be a normalized vector
- Up direction, must be a normalized vector
-
-
-
- Align the coordinate frame X and Y axis with a given rotation
- around the Z axis in radians
-
- Absolute rotation around the Z axis in
- radians
-
-
- Origin position of this coordinate frame
-
-
- X axis of this coordinate frame, or Forward/At in grid terms
-
-
- Y axis of this coordinate frame, or Left in grid terms
-
-
- Z axis of this coordinate frame, or Up in grid terms
-
-
-
- Throttles the network traffic for various different traffic types.
- Access this class through GridClient.Throttle
-
-
-
-
- Default constructor, uses a default high total of 1500 KBps (1536000)
-
-
-
-
- Constructor that decodes an existing AgentThrottle packet in to
- individual values
-
- Reference to the throttle data in an AgentThrottle
- packet
- Offset position to start reading at in the
- throttle data
- This is generally not needed in clients as the server will
- never send a throttle packet to the client
-
-
-
- Send an AgentThrottle packet to the current server using the
- current values
-
-
-
-
- Send an AgentThrottle packet to the specified server using the
- current values
-
-
-
-
- Convert the current throttle values to a byte array that can be put
- in an AgentThrottle packet
-
- Byte array containing all the throttle values
-
-
- Maximum bits per second for resending unacknowledged packets
-
-
- Maximum bits per second for LayerData terrain
-
-
- Maximum bits per second for LayerData wind data
-
-
- Maximum bits per second for LayerData clouds
-
-
- Unknown, includes object data
-
-
- Maximum bits per second for textures
-
-
- Maximum bits per second for downloaded assets
-
-
- Maximum bits per second the entire connection, divided up
- between invidiual streams using default multipliers
-
-
-
- Permission request flags, asked when a script wants to control an Avatar
-
-
-
- Placeholder for empty values, shouldn't ever see this
-
-
- Script wants ability to take money from you
-
-
- Script wants to take camera controls for you
-
-
- Script wants to remap avatars controls
-
-
- Script wants to trigger avatar animations
- This function is not implemented on the grid
-
-
- Script wants to attach or detach the prim or primset to your avatar
-
-
- Script wants permission to release ownership
- This function is not implemented on the grid
- The concept of "public" objects does not exist anymore.
-
-
- Script wants ability to link/delink with other prims
-
-
- Script wants permission to change joints
- This function is not implemented on the grid
-
-
- Script wants permissions to change permissions
- This function is not implemented on the grid
-
-
- Script wants to track avatars camera position and rotation
-
-
- Script wants to control your camera
-
-
-
- Special commands used in Instant Messages
-
-
-
- Indicates a regular IM from another agent
-
-
- Simple notification box with an OK button
-
-
- You've been invited to join a group.
-
-
- Inventory offer
-
-
- Accepted inventory offer
-
-
- Declined inventory offer
-
-
- Group vote
-
-
- An object is offering its inventory
-
-
- Accept an inventory offer from an object
-
-
- Decline an inventory offer from an object
-
-
- Unknown
-
-
- Start a session, or add users to a session
-
-
- Start a session, but don't prune offline users
-
-
- Start a session with your group
-
-
- Start a session without a calling card (finder or objects)
-
-
- Send a message to a session
-
-
- Leave a session
-
-
- Indicates that the IM is from an object
-
-
- Sent an IM to a busy user, this is the auto response
-
-
- Shows the message in the console and chat history
-
-
- Send a teleport lure
-
-
- Response sent to the agent which inititiated a teleport invitation
-
-
- Response sent to the agent which inititiated a teleport invitation
-
-
- Only useful if you have Linden permissions
-
-
- A placeholder type for future expansion, currently not
- used
-
-
- IM to tell the user to go to an URL
-
-
- IM for help
-
-
- IM sent automatically on call for help, sends a lure
- to each Helper reached
-
-
- Like an IM but won't go to email
-
-
- IM from a group officer to all group members
-
-
- Unknown
-
-
- Unknown
-
-
- Accept a group invitation
-
-
- Decline a group invitation
-
-
- Unknown
-
-
- An avatar is offering you friendship
-
-
- An avatar has accepted your friendship offer
-
-
- An avatar has declined your friendship offer
-
-
- Indicates that a user has started typing
-
-
- Indicates that a user has stopped typing
-
-
-
- Flag in Instant Messages, whether the IM should be delivered to
- offline avatars as well
-
-
-
- Only deliver to online avatars
-
-
- If the avatar is offline the message will be held until
- they login next, and possibly forwarded to their e-mail account
-
-
-
- Conversion type to denote Chat Packet types in an easier-to-understand format
-
-
-
- Whisper (5m radius)
-
-
- Normal chat (10/20m radius), what the official viewer typically sends
-
-
- Shouting! (100m radius)
-
-
- Event message when an Avatar has begun to type
-
-
- Event message when an Avatar has stopped typing
-
-
- Send the message to the debug channel
-
-
- Event message when an object uses llOwnerSay
-
-
- Special value to support llRegionSay, never sent to the client
-
-
-
- Identifies the source of a chat message
-
-
-
- Chat from the grid or simulator
-
-
- Chat from another avatar
-
-
- Chat from an object
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Effect type used in ViewerEffect packets
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Project a beam from a source to a destination, such as
- the one used when editing an object
-
-
-
-
-
-
-
-
-
-
-
- Create a swirl of particles around an object
-
-
-
-
-
-
-
-
- Cause an avatar to look at an object
-
-
- Cause an avatar to point at an object
-
-
-
- The action an avatar is doing when looking at something, used in
- ViewerEffect packets for the LookAt effect
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Deprecated
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- The action an avatar is doing when pointing at something, used in
- ViewerEffect packets for the PointAt effect
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Money transaction types
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Flags sent when a script takes or releases a control
-
- NOTE: (need to verify) These might be a subset of the ControlFlags enum in Movement,
-
-
- No Flags set
-
-
- Forward (W or up Arrow)
-
-
- Back (S or down arrow)
-
-
- Move left (shift+A or left arrow)
-
-
- Move right (shift+D or right arrow)
-
-
- Up (E or PgUp)
-
-
- Down (C or PgDown)
-
-
- Rotate left (A or left arrow)
-
-
- Rotate right (D or right arrow)
-
-
- Left Mouse Button
-
-
- Left Mouse button in MouseLook
-
-
-
- Currently only used to hide your group title
-
-
-
- No flags set
-
-
- Hide your group title
-
-
-
- Action state of the avatar, which can currently be typing and
- editing
-
-
-
-
-
-
-
-
-
-
-
-
-
- Current teleport status
-
-
-
- Unknown status
-
-
- Teleport initialized
-
-
- Teleport in progress
-
-
- Teleport failed
-
-
- Teleport completed
-
-
- Teleport cancelled
-
-
-
-
-
-
-
- No flags set, or teleport failed
-
-
- Set when newbie leaves help island for first time
-
-
-
-
-
- Via Lure
-
-
- Via Landmark
-
-
- Via Location
-
-
- Via Home
-
-
- Via Telehub
-
-
- Via Login
-
-
- Linden Summoned
-
-
- Linden Forced me
-
-
-
-
-
- Agent Teleported Home via Script
-
-
-
-
-
-
-
-
-
-
-
- forced to new location for example when avatar is banned or ejected
-
-
- Teleport Finished via a Lure
-
-
- Finished, Sim Changed
-
-
- Finished, Same Sim
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Instant Message
-
-
-
- Key of sender
-
-
- Name of sender
-
-
- Key of destination avatar
-
-
- ID of originating estate
-
-
- Key of originating region
-
-
- Coordinates in originating region
-
-
- Instant message type
-
-
- Group IM session toggle
-
-
- Key of IM session, for Group Messages, the groups UUID
-
-
- Timestamp of the instant message
-
-
- Instant message text
-
-
- Whether this message is held for offline avatars
-
-
- Context specific packed data
-
-
- Print the struct data as a string
- A string containing the field name, and field value
-
-
-
-
-
-
-
-
- Construct a new instance of the ChatEventArgs object
-
- Sim from which the message originates
- The message sent
- The audible level of the message
- The type of message sent: whisper, shout, etc
- The source type of the message sender
- The name of the agent or object sending the message
- The ID of the agent or object sending the message
- The ID of the object owner, or the agent ID sending the message
- The position of the agent or object sending the message
-
-
- Get the simulator sending the message
-
-
- Get the message sent
-
-
- Get the audible level of the message
-
-
- Get the type of message sent: whisper, shout, etc
-
-
- Get the source type of the message sender
-
-
- Get the name of the agent or object sending the message
-
-
- Get the ID of the agent or object sending the message
-
-
- Get the ID of the object owner, or the agent ID sending the message
-
-
- Get the position of the agent or object sending the message
-
-
- Contains the data sent when a primitive opens a dialog with this agent
-
-
-
- Construct a new instance of the ScriptDialogEventArgs
-
- The dialog message
- The name of the object that sent the dialog request
- The ID of the image to be displayed
- The ID of the primitive sending the dialog
- The first name of the senders owner
- The last name of the senders owner
- The communication channel the dialog was sent on
- The string labels containing the options presented in this dialog
-
-
- Get the dialog message
-
-
- Get the name of the object that sent the dialog request
-
-
- Get the ID of the image to be displayed
-
-
- Get the ID of the primitive sending the dialog
-
-
- Get the first name of the senders owner
-
-
- Get the last name of the senders owner
-
-
- Get the communication channel the dialog was sent on, responses
- should also send responses on this same channel
-
-
- Get the string labels containing the options presented in this dialog
-
-
- Contains the data sent when a primitive requests debit or other permissions
- requesting a YES or NO answer
-
-
-
- Construct a new instance of the ScriptQuestionEventArgs
-
- The simulator containing the object sending the request
- The ID of the script making the request
- The ID of the primitive containing the script making the request
- The name of the primitive making the request
- The name of the owner of the object making the request
- The permissions being requested
-
-
- Get the simulator containing the object sending the request
-
-
- Get the ID of the script making the request
-
-
- Get the ID of the primitive containing the script making the request
-
-
- Get the name of the primitive making the request
-
-
- Get the name of the owner of the object making the request
-
-
- Get the permissions being requested
-
-
- Contains the data sent when a primitive sends a request
- to an agent to open the specified URL
-
-
-
- Construct a new instance of the LoadUrlEventArgs
-
- The name of the object sending the request
- The ID of the object sending the request
- The ID of the owner of the object sending the request
- True if the object is owned by a group
- The message sent with the request
- The URL the object sent
-
-
- Get the name of the object sending the request
-
-
- Get the ID of the object sending the request
-
-
- Get the ID of the owner of the object sending the request
-
-
- True if the object is owned by a group
-
-
- Get the message sent with the request
-
-
- Get the URL the object sent
-
-
- The date received from an ImprovedInstantMessage
-
-
-
- Construct a new instance of the InstantMessageEventArgs object
-
- the InstantMessage object
- the simulator where the InstantMessage origniated
-
-
- Get the InstantMessage object
-
-
- Get the simulator where the InstantMessage origniated
-
-
- Contains the currency balance
-
-
-
- Construct a new BalanceEventArgs object
-
- The currenct balance
-
-
-
- Get the currenct balance
-
-
-
- Contains the transaction summary when an item is purchased,
- money is given, or land is purchased
-
-
-
- Construct a new instance of the MoneyBalanceReplyEventArgs object
-
- The ID of the transaction
- True of the transaction was successful
- The current currency balance
- The meters credited
- The meters comitted
- A brief description of the transaction
-
-
- Get the ID of the transaction
-
-
- True of the transaction was successful
-
-
- Get the remaining currency balance
-
-
- Get the meters credited
-
-
- Get the meters comitted
-
-
- Get the description of the transaction
-
-
- Data sent from the simulator containing information about your agent and active group information
-
-
-
- Construct a new instance of the AgentDataReplyEventArgs object
-
- The agents first name
- The agents last name
- The agents active group ID
- The group title of the agents active group
- The combined group powers the agent has in the active group
- The name of the group the agent has currently active
-
-
- Get the agents first name
-
-
- Get the agents last name
-
-
- Get the active group ID of your agent
-
-
- Get the active groups title of your agent
-
-
- Get the combined group powers of your agent
-
-
- Get the active group name of your agent
-
-
- Data sent by the simulator to indicate the active/changed animations
- applied to your agent
-
-
-
- Construct a new instance of the AnimationsChangedEventArgs class
-
- The dictionary that contains the changed animations
-
-
- Get the dictionary that contains the changed animations
-
-
-
- Data sent from a simulator indicating a collision with your agent
-
-
-
-
- Construct a new instance of the MeanCollisionEventArgs class
-
- The type of collision that occurred
- The ID of the agent or object that perpetrated the agression
- The ID of the Victim
- The strength of the collision
- The Time the collision occurred
-
-
- Get the Type of collision
-
-
- Get the ID of the agent or object that collided with your agent
-
-
- Get the ID of the agent that was attacked
-
-
- A value indicating the strength of the collision
-
-
- Get the time the collision occurred
-
-
- Data sent to your agent when it crosses region boundaries
-
-
-
- Construct a new instance of the RegionCrossedEventArgs class
-
- The simulator your agent just left
- The simulator your agent is now in
-
-
- Get the simulator your agent just left
-
-
- Get the simulator your agent is now in
-
-
- Data sent from the simulator when your agent joins a group chat session
-
-
-
- Construct a new instance of the GroupChatJoinedEventArgs class
-
- The ID of the session
- The name of the session
- A temporary session id used for establishing new sessions
- True of your agent successfully joined the session
-
-
- Get the ID of the group chat session
-
-
- Get the name of the session
-
-
- Get the temporary session ID used for establishing new sessions
-
-
- True if your agent successfully joined the session
-
-
- The session information when your agent exits a group chat session
-
-
-
- Construct a new instance of the GroupChatLeftEventArgs class
-
- The ID of the session your agent left
-
-
- Get the ID of the session your agent left
-
-
- Data sent by the simulator containing urgent messages
-
-
-
- Construct a new instance of the AlertMessageEventArgs class
-
- The alert message
-
-
- Get the alert message
-
-
- Data sent by a script requesting to take or release specified controls to your agent
-
-
-
- Construct a new instance of the ScriptControlEventArgs class
-
- The controls the script is attempting to take or release to the agent
- True if the script is passing controls back to the agent
- True if the script is requesting controls be released to the script
-
-
- Get the controls the script is attempting to take or release to the agent
-
-
- True if the script is passing controls back to the agent
-
-
- True if the script is requesting controls be released to the script
-
-
-
- Data sent from the simulator to an agent to indicate its view limits
-
-
-
-
- Construct a new instance of the CameraConstraintEventArgs class
-
- The collision plane
-
-
- Get the collision plane
-
-
-
- Data containing script sensor requests which allow an agent to know the specific details
- of a primitive sending script sensor requests
-
-
-
-
- Construct a new instance of the ScriptSensorReplyEventArgs
-
- The ID of the primitive sending the sensor
- The ID of the group associated with the primitive
- The name of the primitive sending the sensor
- The ID of the primitive sending the sensor
- The ID of the owner of the primitive sending the sensor
- The position of the primitive sending the sensor
- The range the primitive specified to scan
- The rotation of the primitive sending the sensor
- The type of sensor the primitive sent
- The velocity of the primitive sending the sensor
-
-
- Get the ID of the primitive sending the sensor
-
-
- Get the ID of the group associated with the primitive
-
-
- Get the name of the primitive sending the sensor
-
-
- Get the ID of the primitive sending the sensor
-
-
- Get the ID of the owner of the primitive sending the sensor
-
-
- Get the position of the primitive sending the sensor
-
-
- Get the range the primitive specified to scan
-
-
- Get the rotation of the primitive sending the sensor
-
-
- Get the type of sensor the primitive sent
-
-
- Get the velocity of the primitive sending the sensor
-
-
- Contains the response data returned from the simulator in response to a
-
-
- Construct a new instance of the AvatarSitResponseEventArgs object
-
-
- Get the ID of the primitive the agent will be sitting on
-
-
- True if the simulator Autopilot functions were involved
-
-
- Get the camera offset of the agent when seated
-
-
- Get the camera eye offset of the agent when seated
-
-
- True of the agent will be in mouselook mode when seated
-
-
- Get the position of the agent when seated
-
-
- Get the rotation of the agent when seated
-
-
- Data sent when an agent joins a chat session your agent is currently participating in
-
-
-
- Construct a new instance of the ChatSessionMemberAddedEventArgs object
-
- The ID of the chat session
- The ID of the agent joining
-
-
- Get the ID of the chat session
-
-
- Get the ID of the agent that joined
-
-
- Data sent when an agent exits a chat session your agent is currently participating in
-
-
-
- Construct a new instance of the ChatSessionMemberLeftEventArgs object
-
- The ID of the chat session
- The ID of the Agent that left
-
-
- Get the ID of the chat session
-
-
- Get the ID of the agent that left
-
-
-
- Identifier code for primitive types
-
-
-
- None
-
-
- A Primitive
-
-
- A Avatar
-
-
- Linden grass
-
-
- Linden tree
-
-
- A primitive that acts as the source for a particle stream
-
-
- A Linden tree
-
-
-
- Primary parameters for primitives such as Physics Enabled or Phantom
-
-
-
- Deprecated
-
-
- Whether physics are enabled for this object
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Whether this object contains an active touch script
-
-
-
-
-
- Whether this object can receive payments
-
-
- Whether this object is phantom (no collisions)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Deprecated
-
-
-
-
-
-
-
-
-
-
-
- Deprecated
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Server flag, will not be sent to clients. Specifies that
- the object is destroyed when it touches a simulator edge
-
-
- Server flag, will not be sent to clients. Specifies that
- the object will be returned to the owner's inventory when it
- touches a simulator edge
-
-
- Server flag, will not be sent to clients.
-
-
- Server flag, will not be sent to client. Specifies that
- the object is hovering/flying
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Sound flags for sounds attached to primitives
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Material type for a primitive
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Used in a helper function to roughly determine prim shape
-
-
-
-
- Extra parameters for primitives, these flags are for features that have
- been added after the original ObjectFlags that has all eight bits
- reserved already
-
-
-
- Whether this object has flexible parameters
-
-
- Whether this object has light parameters
-
-
- Whether this object is a sculpted prim
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Attachment points for objects on avatar bodies
-
-
- Both InventoryObject and InventoryAttachment types can be attached
-
-
-
- Right hand if object was not previously attached
-
-
- Chest
-
-
- Skull
-
-
- Left shoulder
-
-
- Right shoulder
-
-
- Left hand
-
-
- Right hand
-
-
- Left foot
-
-
- Right foot
-
-
- Spine
-
-
- Pelvis
-
-
- Mouth
-
-
- Chin
-
-
- Left ear
-
-
- Right ear
-
-
- Left eyeball
-
-
- Right eyeball
-
-
- Nose
-
-
- Right upper arm
-
-
- Right forearm
-
-
- Left upper arm
-
-
- Left forearm
-
-
- Right hip
-
-
- Right upper leg
-
-
- Right lower leg
-
-
- Left hip
-
-
- Left upper leg
-
-
- Left lower leg
-
-
- Stomach
-
-
- Left pectoral
-
-
- Right pectoral
-
-
- HUD Center position 2
-
-
- HUD Top-right
-
-
- HUD Top
-
-
- HUD Top-left
-
-
- HUD Center
-
-
- HUD Bottom-left
-
-
- HUD Bottom
-
-
- HUD Bottom-right
-
-
-
- Tree foliage types
-
-
-
- Pine1 tree
-
-
- Oak tree
-
-
- Tropical Bush1
-
-
- Palm1 tree
-
-
- Dogwood tree
-
-
- Tropical Bush2
-
-
- Palm2 tree
-
-
- Cypress1 tree
-
-
- Cypress2 tree
-
-
- Pine2 tree
-
-
- Plumeria
-
-
- Winter pinetree1
-
-
- Winter Aspen tree
-
-
- Winter pinetree2
-
-
- Eucalyptus tree
-
-
- Fern
-
-
- Eelgrass
-
-
- Sea Sword
-
-
- Kelp1 plant
-
-
- Beach grass
-
-
- Kelp2 plant
-
-
-
- Grass foliage types
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Action associated with clicking on an object
-
-
-
- Touch object
-
-
- Sit on object
-
-
- Purchase object or contents
-
-
- Pay the object
-
-
- Open task inventory
-
-
- Play parcel media
-
-
- Open parcel media
-
-
-
- A set of textures that are layered on texture of each other and "baked"
- in to a single texture, for avatar appearances
-
-
-
- Final baked texture
-
-
- Component layers
-
-
- Width of the final baked image and scratchpad
-
-
- Height of the final baked image and scratchpad
-
-
- Bake type
-
-
-
- Default constructor
-
- Bake type
-
-
-
- Adds layer for baking
-
- TexturaData struct that contains texture and its params
-
-
-
- Converts avatar texture index (face) to Bake type
-
- Face number (AvatarTextureIndex)
- BakeType, layer to which this texture belongs to
-
-
-
- Make sure images exist, resize source if needed to match the destination
-
- Destination image
- Source image
- Sanitization was succefull
-
-
-
- Fills a baked layer as a solid *appearing* color. The colors are
- subtly dithered on a 16x16 grid to prevent the JPEG2000 stage from
- compressing it too far since it seems to cause upload failures if
- the image is a pure solid color
-
- Color of the base of this layer
-
-
-
- Fills a baked layer as a solid *appearing* color. The colors are
- subtly dithered on a 16x16 grid to prevent the JPEG2000 stage from
- compressing it too far since it seems to cause upload failures if
- the image is a pure solid color
-
- Red value
- Green value
- Blue value
-
-
- Final baked texture
-
-
- Component layers
-
-
- Width of the final baked image and scratchpad
-
-
- Height of the final baked image and scratchpad
-
-
- Bake type
-
-
- Is this one of the 3 skin bakes
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the LandPatchReceived event
- A LandPatchReceivedEventArgs object containing the
- data returned from the simulator
-
-
- Thread sync lock object
-
-
-
- Default constructor
-
-
-
-
-
- Retrieve the terrain height at a given coordinate
-
- The region that the point of interest is in
- Sim X coordinate, valid range is from 0 to 255
- Sim Y coordinate, valid range is from 0 to 255
- The terrain height at the given point if the
- lookup was successful, otherwise 0.0f
- True if the lookup was successful, otherwise false
-
-
- Raised when the simulator responds sends
-
-
- Simulator from that sent tha data
-
-
- Sim coordinate of the patch
-
-
- Sim coordinate of the patch
-
-
- Size of tha patch
-
-
- Heightmap for the patch
-
-
-
- The InternalDictionary class is used through the library for storing key/value pairs.
- It is intended to be a replacement for the generic Dictionary class and should
- be used in its place. It contains several methods for allowing access to the data from
- outside the library that are read only and thread safe.
-
-
- Key
- Value
-
-
- Internal dictionary that this class wraps around. Do not
- modify or enumerate the contents of this dictionary without locking
- on this member
-
-
-
- Initializes a new instance of the Class
- with the specified key/value, has the default initial capacity.
-
-
-
- // initialize a new InternalDictionary named testDict with a string as the key and an int as the value.
- public InternalDictionary<string, int> testDict = new InternalDictionary<string, int>();
-
-
-
-
-
- Initializes a new instance of the Class
- with the specified key/value, has its initial valies copied from the specified
-
-
-
- to copy initial values from
-
-
- // initialize a new InternalDictionary named testAvName with a UUID as the key and an string as the value.
- // populates with copied values from example KeyNameCache Dictionary.
-
- // create source dictionary
- Dictionary<UUID, string> KeyNameCache = new Dictionary<UUID, string>();
- KeyNameCache.Add("8300f94a-7970-7810-cf2c-fc9aa6cdda24", "Jack Avatar");
- KeyNameCache.Add("27ba1e40-13f7-0708-3e98-5819d780bd62", "Jill Avatar");
-
- // Initialize new dictionary.
- public InternalDictionary<UUID, string> testAvName = new InternalDictionary<UUID, string>(KeyNameCache);
-
-
-
-
-
- Initializes a new instance of the Class
- with the specified key/value, With its initial capacity specified.
-
- Initial size of dictionary
-
-
- // initialize a new InternalDictionary named testDict with a string as the key and an int as the value,
- // initially allocated room for 10 entries.
- public InternalDictionary<string, int> testDict = new InternalDictionary<string, int>(10);
-
-
-
-
-
- Try to get entry from with specified key
-
- Key to use for lookup
- Value returned
- if specified key exists, if not found
-
-
- // find your avatar using the Simulator.ObjectsAvatars InternalDictionary:
- Avatar av;
- if (Client.Network.CurrentSim.ObjectsAvatars.TryGetValue(Client.Self.AgentID, out av))
- Console.WriteLine("Found Avatar {0}", av.Name);
-
-
-
-
-
-
- Finds the specified match.
-
- The match.
- Matched value
-
-
- // use a delegate to find a prim in the ObjectsPrimitives InternalDictionary
- // with the ID 95683496
- uint findID = 95683496;
- Primitive findPrim = sim.ObjectsPrimitives.Find(
- delegate(Primitive prim) { return prim.ID == findID; });
-
-
-
-
- Find All items in an
- return matching items.
- a containing found items.
-
- Find All prims within 20 meters and store them in a List
-
- int radius = 20;
- List<Primitive> prims = Client.Network.CurrentSim.ObjectsPrimitives.FindAll(
- delegate(Primitive prim) {
- Vector3 pos = prim.Position;
- return ((prim.ParentID == 0) && (pos != Vector3.Zero) && (Vector3.Distance(pos, location) < radius));
- }
- );
-
-
-
-
- Find All items in an
- return matching keys.
- a containing found keys.
-
- Find All keys which also exist in another dictionary
-
- List<UUID> matches = myDict.FindAll(
- delegate(UUID id) {
- return myOtherDict.ContainsKey(id);
- }
- );
-
-
-
-
- Perform an on each entry in an
- to perform
-
-
- // Iterates over the ObjectsPrimitives InternalDictionary and prints out some information.
- Client.Network.CurrentSim.ObjectsPrimitives.ForEach(
- delegate(Primitive prim)
- {
- if (prim.Text != null)
- {
- Console.WriteLine("NAME={0} ID = {1} TEXT = '{2}'",
- prim.PropertiesFamily.Name, prim.ID, prim.Text);
- }
- });
-
-
-
-
- Perform an on each key of an
- to perform
-
-
-
- Perform an on each KeyValuePair of an
-
- to perform
-
-
- Check if Key exists in Dictionary
- Key to check for
- if found, otherwise
-
-
- Check if Value exists in Dictionary
- Value to check for
- if found, otherwise
-
-
-
- Adds the specified key to the dictionary, dictionary locking is not performed,
-
-
- The key
- The value
-
-
-
- Removes the specified key, dictionary locking is not performed
-
- The key.
- if successful, otherwise
-
-
-
- Gets the number of Key/Value pairs contained in the
-
-
-
-
- Indexer for the dictionary
-
- The key
- The value
-
-
-
- Avatar group management
-
-
-
- Key of Group Member
-
-
- Total land contribution
-
-
- Online status information
-
-
- Abilities that the Group Member has
-
-
- Current group title
-
-
- Is a group owner
-
-
-
- Role manager for a group
-
-
-
- Key of the group
-
-
- Key of Role
-
-
- Name of Role
-
-
- Group Title associated with Role
-
-
- Description of Role
-
-
- Abilities Associated with Role
-
-
- Returns the role's title
- The role's title
-
-
-
- Class to represent Group Title
-
-
-
- Key of the group
-
-
- ID of the role title belongs to
-
-
- Group Title
-
-
- Whether title is Active
-
-
- Returns group title
-
-
-
- Represents a group on the grid
-
-
-
- Key of Group
-
-
- Key of Group Insignia
-
-
- Key of Group Founder
-
-
- Key of Group Role for Owners
-
-
- Name of Group
-
-
- Text of Group Charter
-
-
- Title of "everyone" role
-
-
- Is the group open for enrolement to everyone
-
-
- Will group show up in search
-
-
-
-
-
-
-
-
-
-
-
- Is the group Mature
-
-
- Cost of group membership
-
-
-
-
-
-
-
-
- The total number of current members this group has
-
-
- The number of roles this group has configured
-
-
- Show this group in agent's profile
-
-
- Returns the name of the group
- A string containing the name of the group
-
-
-
- A group Vote
-
-
-
- Key of Avatar who created Vote
-
-
- Text of the Vote proposal
-
-
- Total number of votes
-
-
-
- A group proposal
-
-
-
- The Text of the proposal
-
-
- The minimum number of members that must vote before proposal passes or failes
-
-
- The required ration of yes/no votes required for vote to pass
- The three options are Simple Majority, 2/3 Majority, and Unanimous
- TODO: this should be an enum
-
-
- The duration in days votes are accepted
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Struct representing a group notice
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Struct representing a group notice list entry
-
-
-
- Notice ID
-
-
- Creation timestamp of notice
-
-
- Agent name who created notice
-
-
- Notice subject
-
-
- Is there an attachment?
-
-
- Attachment Type
-
-
-
- Struct representing a member of a group chat session and their settings
-
-
-
- The of the Avatar
-
-
- True if user has voice chat enabled
-
-
- True of Avatar has moderator abilities
-
-
- True if a moderator has muted this avatars chat
-
-
- True if a moderator has muted this avatars voice
-
-
-
- Role update flags
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Can send invitations to groups default role
-
-
- Can eject members from group
-
-
- Can toggle 'Open Enrollment' and change 'Signup fee'
-
-
- Member is visible in the public member list
-
-
- Can create new roles
-
-
- Can delete existing roles
-
-
- Can change Role names, titles and descriptions
-
-
- Can assign other members to assigners role
-
-
- Can assign other members to any role
-
-
- Can remove members from roles
-
-
- Can assign and remove abilities in roles
-
-
- Can change group Charter, Insignia, 'Publish on the web' and which
- members are publicly visible in group member listings
-
-
- Can buy land or deed land to group
-
-
- Can abandon group owned land to Governor Linden on mainland, or Estate owner for
- private estates
-
-
- Can set land for-sale information on group owned parcels
-
-
- Can subdivide and join parcels
-
-
- Can join group chat sessions
-
-
- Can use voice chat in Group Chat sessions
-
-
- Can moderate group chat sessions
-
-
- Can toggle "Show in Find Places" and set search category
-
-
- Can change parcel name, description, and 'Publish on web' settings
-
-
- Can set the landing point and teleport routing on group land
-
-
- Can change music and media settings
-
-
- Can toggle 'Edit Terrain' option in Land settings
-
-
- Can toggle various About Land > Options settings
-
-
- Can always terraform land, even if parcel settings have it turned off
-
-
- Can always fly while over group owned land
-
-
- Can always rez objects on group owned land
-
-
- Can always create landmarks for group owned parcels
-
-
- Can set home location on any group owned parcel
-
-
- Can modify public access settings for group owned parcels
-
-
- Can manager parcel ban lists on group owned land
-
-
- Can manage pass list sales information
-
-
- Can eject and freeze other avatars on group owned land
-
-
- Can return objects set to group
-
-
- Can return non-group owned/set objects
-
-
- Can return group owned objects
-
-
- Can landscape using Linden plants
-
-
- Can deed objects to group
-
-
- Can move group owned objects
-
-
- Can set group owned objects for-sale
-
-
- Pay group liabilities and receive group dividends
-
-
- Can send group notices
-
-
- Can receive group notices
-
-
- Can create group proposals
-
-
- Can vote on group proposals
-
-
-
- Handles all network traffic related to reading and writing group
- information
-
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the CurrentGroups event
- A CurrentGroupsEventArgs object containing the
- data sent from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the GroupNamesReply event
- A GroupNamesEventArgs object containing the
- data response from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the GroupProfile event
- An GroupProfileEventArgs object containing the
- data returned from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the GroupMembers event
- A GroupMembersEventArgs object containing the
- data returned from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the GroupRolesDataReply event
- A GroupRolesDataReplyEventArgs object containing the
- data returned from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the GroupRoleMembersReply event
- A GroupRolesRoleMembersReplyEventArgs object containing the
- data returned from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the GroupTitlesReply event
- A GroupTitlesReplyEventArgs object containing the
- data returned from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the GroupAccountSummary event
- A GroupAccountSummaryReplyEventArgs object containing the
- data returned from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the GroupCreated event
- An GroupCreatedEventArgs object containing the
- data returned from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the GroupJoined event
- A GroupOperationEventArgs object containing the
- result of the operation returned from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the GroupLeft event
- A GroupOperationEventArgs object containing the
- result of the operation returned from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the GroupDropped event
- An GroupDroppedEventArgs object containing the
- the group your agent left
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the GroupMemberEjected event
- An GroupMemberEjectedEventArgs object containing the
- data returned from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the GroupNoticesListReply event
- An GroupNoticesListReplyEventArgs object containing the
- data returned from the simulator
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the GroupInvitation event
- An GroupInvitationEventArgs object containing the
- data returned from the simulator
-
-
- Thread sync lock object
-
-
- A reference to the current instance
-
-
- Currently-active group members requests
-
-
- Currently-active group roles requests
-
-
- Currently-active group role-member requests
-
-
- Dictionary keeping group members while request is in progress
-
-
- Dictionary keeping mebmer/role mapping while request is in progress
-
-
- Dictionary keeping GroupRole information while request is in progress
-
-
- Caches group name lookups
-
-
-
- Construct a new instance of the GroupManager class
-
- A reference to the current instance
-
-
-
- Request a current list of groups the avatar is a member of.
-
- CAPS Event Queue must be running for this to work since the results
- come across CAPS.
-
-
-
- Lookup name of group based on groupID
-
- groupID of group to lookup name for.
-
-
-
- Request lookup of multiple group names
-
- List of group IDs to request.
-
-
- Lookup group profile data such as name, enrollment, founder, logo, etc
- Subscribe to OnGroupProfile
event to receive the results.
- group ID (UUID)
-
-
- Request a list of group members.
- Subscribe to OnGroupMembers
event to receive the results.
- group ID (UUID)
- UUID of the request, use to index into cache
-
-
- Request group roles
- Subscribe to OnGroupRoles
event to receive the results.
- group ID (UUID)
- UUID of the request, use to index into cache
-
-
- Request members (members,role) role mapping for a group.
- Subscribe to OnGroupRolesMembers
event to receive the results.
- group ID (UUID)
- UUID of the request, use to index into cache
-
-
- Request a groups Titles
- Subscribe to OnGroupTitles
event to receive the results.
- group ID (UUID)
- UUID of the request, use to index into cache
-
-
- Begin to get the group account summary
- Subscribe to the OnGroupAccountSummary
event to receive the results.
- group ID (UUID)
- How long of an interval
- Which interval (0 for current, 1 for last)
-
-
- Invites a user to a group
- The group to invite to
- A list of roles to invite a person to
- Key of person to invite
-
-
- Set a group as the current active group
- group ID (UUID)
-
-
- Change the role that determines your active title
- Group ID to use
- Role ID to change to
-
-
- Set this avatar's tier contribution
- Group ID to change tier in
- amount of tier to donate
-
-
-
- Save wheather agent wants to accept group notices and list this group in their profile
-
- Group
- Accept notices from this group
- List this group in the profile
-
-
- Request to join a group
- Subscribe to OnGroupJoined
event for confirmation.
- group ID (UUID) to join.
-
-
-
- Request to create a new group. If the group is successfully
- created, L$100 will automatically be deducted
-
- Subscribe to OnGroupCreated
event to receive confirmation.
- Group struct containing the new group info
-
-
- Update a group's profile and other information
- Groups ID (UUID) to update.
- Group struct to update.
-
-
- Eject a user from a group
- Group ID to eject the user from
- Avatar's key to eject
-
-
- Update role information
- Modified role to be updated
-
-
- Create a new group role
- Group ID to update
- Role to create
-
-
- Delete a group role
- Group ID to update
- Role to delete
-
-
- Remove an avatar from a role
- Group ID to update
- Role ID to be removed from
- Avatar's Key to remove
-
-
- Assign an avatar to a role
- Group ID to update
- Role ID to assign to
- Avatar's ID to assign to role
-
-
- Request the group notices list
- Group ID to fetch notices for
-
-
- Request a group notice by key
- ID of group notice
-
-
- Send out a group notice
- Group ID to update
- GroupNotice
structure containing notice data
-
-
- Start a group proposal (vote)
- The Group ID to send proposal to
- GroupProposal
structure containing the proposal
-
-
- Request to leave a group
- Subscribe to OnGroupLeft
event to receive confirmation
- The group to leave
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Raised when the simulator sends us data containing
- our current group membership
-
-
- Raised when the simulator responds to a RequestGroupName
- or RequestGroupNames request
-
-
- Raised when the simulator responds to a request
-
-
- Raised when the simulator responds to a request
-
-
- Raised when the simulator responds to a request
-
-
- Raised when the simulator responds to a request
-
-
- Raised when the simulator responds to a request
-
-
- Raised when a response to a RequestGroupAccountSummary is returned
- by the simulator
-
-
- Raised when a request to create a group is successful
-
-
- Raised when a request to join a group either
- fails or succeeds
-
-
- Raised when a request to leave a group either
- fails or succeeds
-
-
- Raised when A group is removed from the group server
-
-
- Raised when a request to eject a member from a group either
- fails or succeeds
-
-
- Raised when the simulator sends us group notices
-
-
-
- Raised when another agent invites our avatar to join a group
-
-
- Contains the current groups your agent is a member of
-
-
- Construct a new instance of the CurrentGroupsEventArgs class
- The current groups your agent is a member of
-
-
- Get the current groups your agent is a member of
-
-
- A Dictionary of group names, where the Key is the groups ID and the value is the groups name
-
-
- Construct a new instance of the GroupNamesEventArgs class
- The Group names dictionary
-
-
- Get the Group Names dictionary
-
-
- Represents the members of a group
-
-
-
- Construct a new instance of the GroupMembersReplyEventArgs class
-
- The ID of the request
- The ID of the group
- The membership list of the group
-
-
- Get the ID as returned by the request to correlate
- this result set and the request
-
-
- Get the ID of the group
-
-
- Get the dictionary of members
-
-
- Represents the roles associated with a group
-
-
- Construct a new instance of the GroupRolesDataReplyEventArgs class
- The ID as returned by the request to correlate
- this result set and the request
- The ID of the group
- The dictionary containing the roles
-
-
- Get the ID as returned by the request to correlate
- this result set and the request
-
-
- Get the ID of the group
-
-
- Get the dictionary containing the roles
-
-
- Represents the Role to Member mappings for a group
-
-
- Construct a new instance of the GroupRolesMembersReplyEventArgs class
- The ID as returned by the request to correlate
- this result set and the request
- The ID of the group
- The member to roles map
-
-
- Get the ID as returned by the request to correlate
- this result set and the request
-
-
- Get the ID of the group
-
-
- Get the member to roles map
-
-
- Represents the titles for a group
-
-
- Construct a new instance of the GroupTitlesReplyEventArgs class
- The ID as returned by the request to correlate
- this result set and the request
- The ID of the group
- The titles
-
-
- Get the ID as returned by the request to correlate
- this result set and the request
-
-
- Get the ID of the group
-
-
- Get the titles
-
-
- Represents the summary data for a group
-
-
- Construct a new instance of the GroupAccountSummaryReplyEventArgs class
- The ID of the group
- The summary data
-
-
- Get the ID of the group
-
-
- Get the summary data
-
-
- A response to a group create request
-
-
- Construct a new instance of the GroupCreatedReplyEventArgs class
- The ID of the group
- the success or faulure of the request
- A string containing additional information
-
-
- Get the ID of the group
-
-
- true of the group was created successfully
-
-
- A string containing the message
-
-
- Represents a response to a request
-
-
- Construct a new instance of the GroupOperationEventArgs class
- The ID of the group
- true of the request was successful
-
-
- Get the ID of the group
-
-
- true of the request was successful
-
-
- Represents your agent leaving a group
-
-
- Construct a new instance of the GroupDroppedEventArgs class
- The ID of the group
-
-
- Get the ID of the group
-
-
- Represents a list of active group notices
-
-
- Construct a new instance of the GroupNoticesListReplyEventArgs class
- The ID of the group
- The list containing active notices
-
-
- Get the ID of the group
-
-
- Get the notices list
-
-
- Represents the profile of a group
-
-
- Construct a new instance of the GroupProfileEventArgs class
- The group profile
-
-
- Get the group profile
-
-
-
- Provides notification of a group invitation request sent by another Avatar
-
- The invitation is raised when another avatar makes an offer for our avatar
- to join a group.
-
-
- The ID of the Avatar sending the group invitation
-
-
- The name of the Avatar sending the group invitation
-
-
- A message containing the request information which includes
- the name of the group, the groups charter and the fee to join details
-
-
- The Simulator
-
-
- Set to true to accept invitation, false to decline
-
-
-
- Wrapper around a byte array that allows bit to be packed and unpacked
- one at a time or by a variable amount. Useful for very tightly packed
- data like LayerData packets
-
-
-
-
-
-
-
- Default constructor, initialize the bit packer / bit unpacker
- with a byte array and starting position
-
- Byte array to pack bits in to or unpack from
- Starting position in the byte array
-
-
-
- Pack a floating point value in to the data
-
- Floating point value to pack
-
-
-
- Pack part or all of an integer in to the data
-
- Integer containing the data to pack
- Number of bits of the integer to pack
-
-
-
- Pack part or all of an unsigned integer in to the data
-
- Unsigned integer containing the data to pack
- Number of bits of the integer to pack
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Unpacking a floating point value from the data
-
- Unpacked floating point value
-
-
-
- Unpack a variable number of bits from the data in to integer format
-
- Number of bits to unpack
- An integer containing the unpacked bits
- This function is only useful up to 32 bits
-
-
-
- Unpack a variable number of bits from the data in to unsigned
- integer format
-
- Number of bits to unpack
- An unsigned integer containing the unpacked bits
- This function is only useful up to 32 bits
-
-
-
- Unpack a 16-bit signed integer
-
- 16-bit signed integer
-
-
-
- Unpack a 16-bit unsigned integer
-
- 16-bit unsigned integer
-
-
-
- Unpack a 32-bit signed integer
-
- 32-bit signed integer
-
-
-
- Unpack a 32-bit unsigned integer
-
- 32-bit unsigned integer
-
-
-
-
-
-
-
-
-
- Avatar profile flags
-
-
-
-
- Represents an avatar (other than your own)
-
-
-
- Groups that this avatar is a member of
-
-
- Positive and negative ratings
-
-
- Avatar properties including about text, profile URL, image IDs and
- publishing settings
-
-
- Avatar interests including spoken languages, skills, and "want to"
- choices
-
-
- Movement control flags for avatars. Typically not set or used by
- clients. To move your avatar, use Client.Self.Movement instead
-
-
-
- Contains the visual parameters describing the deformation of the avatar
-
-
-
-
- Default constructor
-
-
-
- First name
-
-
- Last name
-
-
- Full name
-
-
- Active group
-
-
-
- Positive and negative ratings
-
-
-
- Positive ratings for Behavior
-
-
- Negative ratings for Behavior
-
-
- Positive ratings for Appearance
-
-
- Negative ratings for Appearance
-
-
- Positive ratings for Building
-
-
- Negative ratings for Building
-
-
- Positive ratings given by this avatar
-
-
- Negative ratings given by this avatar
-
-
-
- Avatar properties including about text, profile URL, image IDs and
- publishing settings
-
-
-
- First Life about text
-
-
- First Life image ID
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Profile image ID
-
-
- Flags of the profile
-
-
- Web URL for this profile
-
-
- Should this profile be published on the web
-
-
- Avatar Online Status
-
-
- Is this a mature profile
-
-
-
-
-
-
-
-
-
- Avatar interests including spoken languages, skills, and "want to"
- choices
-
-
-
- Languages profile field
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Index of TextureEntry slots for avatar appearances
-
-
-
-
- Bake layers for avatar appearance
-
-
-
- Maximum number of concurrent downloads for wearable assets and textures
-
-
- Maximum number of concurrent uploads for baked textures
-
-
- Timeout for fetching inventory listings
-
-
- Timeout for fetching a single wearable, or receiving a single packet response
-
-
- Timeout for fetching a single texture
-
-
- Timeout for uploading a single baked texture
-
-
- Number of times to retry bake upload
-
-
- When changing outfit, kick off rebake after
- 20 seconds has passed since the last change
-
-
- Total number of wearables for each avatar
-
-
- Total number of baked textures on each avatar
-
-
- Total number of wearables per bake layer
-
-
- Total number of textures on an avatar, baked or not
-
-
- Mapping between BakeType and AvatarTextureIndex
-
-
- Map of what wearables are included in each bake
-
-
- Magic values to finalize the cache check hashes for each
- bake
-
-
- Default avatar texture, used to detect when a custom
- texture is not set for a face
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the AgentWearablesReply event
- An AgentWearablesReplyEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the CachedBakesReply event
- An AgentCachedBakesReplyEventArgs object containing the
- data returned from the data server AgentCachedTextureResponse
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the AppearanceSet event
- An AppearanceSetEventArgs object indicating if the operatin was successfull
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the RebakeAvatarRequested event
- An RebakeAvatarTexturesEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- A cache of wearables currently being worn
-
-
- A cache of textures currently being worn
-
-
- Incrementing serial number for AgentCachedTexture packets
-
-
- Incrementing serial number for AgentSetAppearance packets
-
-
- Indicates whether or not the appearance thread is currently
- running, to prevent multiple appearance threads from running
- simultaneously
-
-
- Reference to our agent
-
-
-
- Timer used for delaying rebake on changing outfit
-
-
-
-
- Main appearance thread
-
-
-
-
- Default constructor
-
- A reference to our agent
-
-
-
- Obsolete method for setting appearance. This function no longer does anything.
- Use RequestSetAppearance() to manually start the appearance thread
-
-
-
-
- Obsolete method for setting appearance. This function no longer does anything.
- Use RequestSetAppearance() to manually start the appearance thread
-
- Unused parameter
-
-
-
- Starts the appearance setting thread
-
-
-
-
- Starts the appearance setting thread
-
- True to force rebaking, otherwise false
-
-
-
- Ask the server what textures our agent is currently wearing
-
-
-
-
- Build hashes out of the texture assetIDs for each baking layer to
- ask the simulator whether it has cached copies of each baked texture
-
-
-
-
- Returns the AssetID of the asset that is currently being worn in a
- given WearableType slot
-
- WearableType slot to get the AssetID for
- The UUID of the asset being worn in the given slot, or
- UUID.Zero if no wearable is attached to the given slot or wearables
- have not been downloaded yet
-
-
-
- Add a wearable to the current outfit and set appearance
-
- Wearable to be added to the outfit
-
-
-
- Add a list of wearables to the current outfit and set appearance
-
- List of wearable inventory items to
- be added to the outfit
-
-
-
- Remove a wearable from the current outfit and set appearance
-
- Wearable to be removed from the outfit
-
-
-
- Removes a list of wearables from the current outfit and set appearance
-
- List of wearable inventory items to
- be removed from the outfit
-
-
-
- Replace the current outfit with a list of wearables and set appearance
-
- List of wearable inventory items that
- define a new outfit
-
-
-
- Checks if an inventory item is currently being worn
-
- The inventory item to check against the agent
- wearables
- The WearableType slot that the item is being worn in,
- or WearbleType.Invalid if it is not currently being worn
-
-
-
- Returns a copy of the agents currently worn wearables
-
- A copy of the agents currently worn wearables
- Avoid calling this function multiple times as it will make
- a copy of all of the wearable data each time
-
-
-
- Calls either or
- depending on the value of
- replaceItems
-
- List of wearable inventory items to add
- to the outfit or become a new outfit
- True to replace existing items with the
- new list of items, false to add these items to the existing outfit
-
-
-
- Adds a list of attachments to our agent
-
- A List containing the attachments to add
- If true, tells simulator to remove existing attachment
- first
-
-
-
- Attach an item to our agent at a specific attach point
-
- A to attach
- the on the avatar
- to attach the item to
-
-
-
- Attach an item to our agent specifying attachment details
-
- The of the item to attach
- The attachments owner
- The name of the attachment
- The description of the attahment
- The to apply when attached
- The of the attachment
- The on the agent
- to attach the item to
-
-
-
- Detach an item from our agent using an object
-
- An object
-
-
-
- Detach an item from our agent
-
- The inventory itemID of the item to detach
-
-
-
- Inform the sim which wearables are part of our current outfit
-
-
-
-
- Replaces the Wearables collection with a list of new wearable items
-
- Wearable items to replace the Wearables collection with
-
-
-
- Calculates base color/tint for a specific wearable
- based on its params
-
- All the color info gathered from wearable's VisualParams
- passed as list of ColorParamInfo tuples
- Base color/tint for the wearable
-
-
-
- Blocking method to populate the Wearables dictionary
-
- True on success, otherwise false
-
-
-
- Blocking method to populate the Textures array with cached bakes
-
- True on success, otherwise false
-
-
-
- Populates textures and visual params from a decoded asset
-
- Wearable to decode
-
-
-
- Blocking method to download and parse currently worn wearable assets
-
- True on success, otherwise false
-
-
-
- Get a list of all of the textures that need to be downloaded for a
- single bake layer
-
- Bake layer to get texture AssetIDs for
- A list of texture AssetIDs to download
-
-
-
- Helper method to lookup the TextureID for a single layer and add it
- to a list if it is not already present
-
-
-
-
-
-
- Blocking method to download all of the textures needed for baking
- the given bake layers
-
- A list of layers that need baking
- No return value is given because the baking will happen
- whether or not all textures are successfully downloaded
-
-
-
- Blocking method to create and upload baked textures for all of the
- missing bakes
-
- True on success, otherwise false
-
-
-
- Blocking method to create and upload a baked texture for a single
- bake layer
-
- Layer to bake
- True on success, otherwise false
-
-
-
- Blocking method to upload a baked texture
-
- Five channel JPEG2000 texture data to upload
- UUID of the newly created asset on success, otherwise UUID.Zero
-
-
-
- Creates a dictionary of visual param values from the downloaded wearables
-
- A dictionary of visual param indices mapping to visual param
- values for our agent that can be fed to the Baker class
-
-
-
- Create an AgentSetAppearance packet from Wearables data and the
- Textures array and send it
-
-
-
-
- Converts a WearableType to a bodypart or clothing WearableType
-
- A WearableType
- AssetType.Bodypart or AssetType.Clothing or AssetType.Unknown
-
-
-
- Converts a BakeType to the corresponding baked texture slot in AvatarTextureIndex
-
- A BakeType
- The AvatarTextureIndex slot that holds the given BakeType
-
-
-
- Gives the layer number that is used for morph mask
-
- >A BakeType
- Which layer number as defined in BakeTypeToTextures is used for morph mask
-
-
-
- Converts a BakeType to a list of the texture slots that make up that bake
-
- A BakeType
- A list of texture slots that are inputs for the given bake
-
-
- Triggered when an AgentWearablesUpdate packet is received,
- telling us what our avatar is currently wearing
- request.
-
-
- Raised when an AgentCachedTextureResponse packet is
- received, giving a list of cached bakes that were found on the
- simulator
- request.
-
-
-
- Raised when appearance data is sent to the simulator, also indicates
- the main appearance thread is finished.
-
- request.
-
-
-
- Triggered when the simulator requests the agent rebake its appearance.
-
-
-
-
-
- Returns true if AppearanceManager is busy and trying to set or change appearance will fail
-
-
-
-
- Contains information about a wearable inventory item
-
-
-
- Inventory ItemID of the wearable
-
-
- AssetID of the wearable asset
-
-
- WearableType of the wearable
-
-
- AssetType of the wearable
-
-
- Asset data for the wearable
-
-
-
- Data collected from visual params for each wearable
- needed for the calculation of the color
-
-
-
-
- Holds a texture assetID and the data needed to bake this layer into
- an outfit texture. Used to keep track of currently worn textures
- and baking data
-
-
-
- A texture AssetID
-
-
- Asset data for the texture
-
-
- Collection of alpha masks that needs applying
-
-
- Tint that should be applied to the texture
-
-
- Contains the Event data returned from the data server from an AgentWearablesRequest
-
-
- Construct a new instance of the AgentWearablesReplyEventArgs class
-
-
- Contains the Event data returned from the data server from an AgentCachedTextureResponse
-
-
- Construct a new instance of the AgentCachedBakesReplyEventArgs class
-
-
- Contains the Event data returned from an AppearanceSetRequest
-
-
-
- Triggered when appearance data is sent to the sim and
- the main appearance thread is done.
- Indicates whether appearance setting was successful
-
-
- Indicates whether appearance setting was successful
-
-
- Contains the Event data returned from the data server from an RebakeAvatarTextures
-
-
-
- Triggered when the simulator sends a request for this agent to rebake
- its appearance
-
- The ID of the Texture Layer to bake
-
-
- The ID of the Texture Layer to bake
-
-
-
- Registers, unregisters, and fires events generated by incoming packets
-
-
-
- Reference to the GridClient object
-
-
-
- Default constructor
-
-
-
-
-
- Register an event handler
-
- Use PacketType.Default to fire this event on every
- incoming packet
- Packet type to register the handler for
- Callback to be fired
-
-
-
- Unregister an event handler
-
- Packet type to unregister the handler for
- Callback to be unregistered
-
-
-
- Fire the events registered for this packet type synchronously
-
- Incoming packet type
- Incoming packet
- Simulator this packet was received from
-
-
-
- Fire the events registered for this packet type asynchronously
-
- Incoming packet type
- Incoming packet
- Simulator this packet was received from
-
-
-
- Object that is passed to worker threads in the ThreadPool for
- firing packet callbacks
-
-
-
- Callback to fire for this packet
-
-
- Reference to the simulator that this packet came from
-
-
- The packet that needs to be processed
-
-
-
- Registers, unregisters, and fires events generated by the Capabilities
- event queue
-
-
-
- Reference to the GridClient object
-
-
-
- Default constructor
-
- Reference to the GridClient object
-
-
-
- Register an new event handler for a capabilities event sent via the EventQueue
-
- Use String.Empty to fire this event on every CAPS event
- Capability event name to register the
- handler for
- Callback to fire
-
-
-
- Unregister a previously registered capabilities handler
-
- Capability event name unregister the
- handler for
- Callback to unregister
-
-
-
- Fire the events registered for this event type synchronously
-
- Capability name
- Decoded event body
- Reference to the simulator that
- generated this event
-
-
-
- Fire the events registered for this event type asynchronously
-
- Capability name
- Decoded event body
- Reference to the simulator that
- generated this event
-
-
-
- Object that is passed to worker threads in the ThreadPool for
- firing CAPS callbacks
-
-
-
- Callback to fire for this packet
-
-
- Name of the CAPS event
-
-
- Strongly typed decoded data
-
-
- Reference to the simulator that generated this event
-
-
-
- Access to the data server which allows searching for land, events, people, etc
-
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the EventInfoReply event
- An EventInfoReplyEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the DirEventsReply event
- An DirEventsReplyEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the PlacesReply event
- A PlacesReplyEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the DirPlacesReply event
- A DirPlacesReplyEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the DirClassifiedsReply event
- A DirClassifiedsReplyEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the DirGroupsReply event
- A DirGroupsReplyEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the DirPeopleReply event
- A DirPeopleReplyEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
- The event subscribers. null if no subcribers
-
-
- Raises the DirLandReply event
- A DirLandReplyEventArgs object containing the
- data returned from the data server
-
-
- Thread sync lock object
-
-
-
- Constructs a new instance of the DirectoryManager class
-
- An instance of GridClient
-
-
-
- Query the data server for a list of classified ads containing the specified string.
- Defaults to searching for classified placed in any category, and includes PG, Adult and Mature
- results.
-
- Responses are sent 16 per response packet, there is no way to know how many results a query reply will contain however assuming
- the reply packets arrived ordered, a response with less than 16 entries would indicate all results have been received
-
- The event is raised when a response is received from the simulator
-
- A string containing a list of keywords to search for
- A UUID to correlate the results when the event is raised
-
-
-
- Query the data server for a list of classified ads which contain specified keywords (Overload)
-
- The event is raised when a response is received from the simulator
-
- A string containing a list of keywords to search for
- The category to search
- A set of flags which can be ORed to modify query options
- such as classified maturity rating.
- A UUID to correlate the results when the event is raised
-
- Search classified ads containing the key words "foo" and "bar" in the "Any" category that are either PG or Mature
-
- UUID searchID = StartClassifiedSearch("foo bar", ClassifiedCategories.Any, ClassifiedQueryFlags.PG | ClassifiedQueryFlags.Mature);
-
-
-
- Responses are sent 16 at a time, there is no way to know how many results a query reply will contain however assuming
- the reply packets arrived ordered, a response with less than 16 entries would indicate all results have been received
-
-
-
-
- Starts search for places (Overloaded)
-
- The event is raised when a response is received from the simulator
-
- Search text
- Each request is limited to 100 places
- being returned. To get the first 100 result entries of a request use 0,
- from 100-199 use 1, 200-299 use 2, etc.
- A UUID to correlate the results when the event is raised
-
-
-
- Queries the dataserver for parcels of land which are flagged to be shown in search
-
- The event is raised when a response is received from the simulator
-
- A string containing a list of keywords to search for separated by a space character
- A set of flags which can be ORed to modify query options
- such as classified maturity rating.
- The category to search
- Each request is limited to 100 places
- being returned. To get the first 100 result entries of a request use 0,
- from 100-199 use 1, 200-299 use 2, etc.
- A UUID to correlate the results when the event is raised
-
- Search places containing the key words "foo" and "bar" in the "Any" category that are either PG or Adult
-
- UUID searchID = StartDirPlacesSearch("foo bar", DirFindFlags.DwellSort | DirFindFlags.IncludePG | DirFindFlags.IncludeAdult, ParcelCategory.Any, 0);
-
-
-
- Additional information on the results can be obtained by using the ParcelManager.InfoRequest method
-
-
-
-
- Starts a search for land sales using the directory
-
- The event is raised when a response is received from the simulator
-
- What type of land to search for. Auction,
- estate, mainland, "first land", etc
- The OnDirLandReply event handler must be registered before
- calling this function. There is no way to determine how many
- results will be returned, or how many times the callback will be
- fired other than you won't get more than 100 total parcels from
- each query.
-
-
-
- Starts a search for land sales using the directory
-
- The event is raised when a response is received from the simulator
-
- What type of land to search for. Auction,
- estate, mainland, "first land", etc
- Maximum price to search for
- Maximum area to search for
- Each request is limited to 100 parcels
- being returned. To get the first 100 parcels of a request use 0,
- from 100-199 use 1, 200-299 use 2, etc.
- The OnDirLandReply event handler must be registered before
- calling this function. There is no way to determine how many
- results will be returned, or how many times the callback will be
- fired other than you won't get more than 100 total parcels from
- each query.
-
-
-
- Send a request to the data server for land sales listings
-
-
- Flags sent to specify query options
-
- Available flags:
- Specify the parcel rating with one or more of the following:
- IncludePG IncludeMature IncludeAdult
-
- Specify the field to pre sort the results with ONLY ONE of the following:
- PerMeterSort NameSort AreaSort PricesSort
-
- Specify the order the results are returned in, if not specified the results are pre sorted in a Descending Order
- SortAsc
-
- Specify additional filters to limit the results with one or both of the following:
- LimitByPrice LimitByArea
-
- Flags can be combined by separating them with the | (pipe) character
-
- Additional details can be found in
-
- What type of land to search for. Auction,
- Estate or Mainland
- Maximum price to search for when the
- DirFindFlags.LimitByPrice flag is specified in findFlags
- Maximum area to search for when the
- DirFindFlags.LimitByArea flag is specified in findFlags
- Each request is limited to 100 parcels
- being returned. To get the first 100 parcels of a request use 0,
- from 100-199 use 100, 200-299 use 200, etc.
- The event will be raised with the response from the simulator
-
- There is no way to determine how many results will be returned, or how many times the callback will be
- fired other than you won't get more than 100 total parcels from
- each reply.
-
- Any land set for sale to either anybody or specific to the connected agent will be included in the
- results if the land is included in the query
-
-
- // request all mainland, any maturity rating that is larger than 512 sq.m
- StartLandSearch(DirFindFlags.SortAsc | DirFindFlags.PerMeterSort | DirFindFlags.LimitByArea | DirFindFlags.IncludePG | DirFindFlags.IncludeMature | DirFindFlags.IncludeAdult, SearchTypeFlags.Mainland, 0, 512, 0);
-
-
-
-
- Search for Groups
-
- The name or portion of the name of the group you wish to search for
- Start from the match number
-
-
-
-
- Search for Groups
-
- The name or portion of the name of the group you wish to search for
- Start from the match number
- Search flags
-
-
-
-
- Search the People directory for other avatars
-
- The name or portion of the name of the avatar you wish to search for
-
-
-
-
-
- Search Places for parcels of land you personally own
-
-
-
-
- Searches Places for land owned by the specified group
-
- ID of the group you want to recieve land list for (You must be a member of the group)
- Transaction (Query) ID which can be associated with results from your request.
-
-
-
- Search the Places directory for parcels that are listed in search and contain the specified keywords
-
- A string containing the keywords to search for
- Transaction (Query) ID which can be associated with results from your request.
-
-
-
- Search Places - All Options
-
- One of the Values from the DirFindFlags struct, ie: AgentOwned, GroupOwned, etc.
- One of the values from the SearchCategory Struct, ie: Any, Linden, Newcomer
- A string containing a list of keywords to search for separated by a space character
- String Simulator Name to search in
- LLUID of group you want to recieve results for
- Transaction (Query) ID which can be associated with results from your request.
- Transaction (Query) ID which can be associated with results from your request.
-
-
-
- Search All Events with specifid searchText in all categories, includes PG, Mature and Adult
-
- A string containing a list of keywords to search for separated by a space character
- Each request is limited to 100 entries
- being returned. To get the first group of entries of a request use 0,
- from 100-199 use 100, 200-299 use 200, etc.
- UUID of query to correlate results in callback.
-
-
-
- Search Events
-
- A string containing a list of keywords to search for separated by a space character
- One or more of the following flags: DateEvents, IncludePG, IncludeMature, IncludeAdult
- from the Enum
-
- Multiple flags can be combined by separating the flags with the | (pipe) character
- "u" for in-progress and upcoming events, -or- number of days since/until event is scheduled
- For example "0" = Today, "1" = tomorrow, "2" = following day, "-1" = yesterday, etc.
- Each request is limited to 100 entries
- being returned. To get the first group of entries of a request use 0,
- from 100-199 use 100, 200-299 use 200, etc.
- EventCategory event is listed under.
- UUID of query to correlate results in callback.
-
-
- Requests Event Details
- ID of Event returned from the method
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming event message
- The Unique Capabilities Key
- The event message containing the data
- The simulator the message originated from
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming event message
- The Unique Capabilities Key
- The event message containing the data
- The simulator the message originated from
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Process an incoming packet and raise the appropriate events
- The sender
- The EventArgs object containing the packet data
-
-
- Raised when the data server responds to a request.
-
-
- Raised when the data server responds to a request.
-
-
- Raised when the data server responds to a request.
-
-
- Raised when the data server responds to a request.
-
-
- Raised when the data server responds to a request.
-
-
- Raised when the data server responds to a request.
-
-
- Raised when the data server responds to a request.
-
-
- Raised when the data server responds to a request.
-
-
- Classified Ad categories
-
-
- Classified is listed in the Any category
-
-
- Classified is shopping related
-
-
- Classified is
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Event Categories
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Query Flags used in many of the DirectoryManager methods to specify which query to execute and how to return the results.
-
- Flags can be combined using the | (pipe) character, not all flags are available in all queries
-
-
-
- Query the People database
-
-
-
-
-
-
-
-
- Query the Groups database
-
-
- Query the Events database
-
-
- Query the land holdings database for land owned by the currently connected agent
-
-
-
-
-
- Query the land holdings database for land which is owned by a Group
-
-
- Specifies the query should pre sort the results based upon traffic
- when searching the Places database
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Specifies the query should pre sort the results in an ascending order when searching the land sales database.
- This flag is only used when searching the land sales database
-
-
- Specifies the query should pre sort the results using the SalePrice field when searching the land sales database.
- This flag is only used when searching the land sales database
-
-
- Specifies the query should pre sort the results by calculating the average price/sq.m (SalePrice / Area) when searching the land sales database.
- This flag is only used when searching the land sales database
-
-
- Specifies the query should pre sort the results using the ParcelSize field when searching the land sales database.
- This flag is only used when searching the land sales database
-
-
- Specifies the query should pre sort the results using the Name field when searching the land sales database.
- This flag is only used when searching the land sales database
-
-
- When set, only parcels less than the specified Price will be included when searching the land sales database.
- This flag is only used when searching the land sales database
-
-
- When set, only parcels greater than the specified Size will be included when searching the land sales database.
- This flag is only used when searching the land sales database
-
-
-
-
-
-
-
-
- Include PG land in results. This flag is used when searching both the Groups, Events and Land sales databases
-
-
- Include Mature land in results. This flag is used when searching both the Groups, Events and Land sales databases
-
-
- Include Adult land in results. This flag is used when searching both the Groups, Events and Land sales databases
-
-
-
-
-
-
- Land types to search dataserver for
-
-
-
- Search Auction, Mainland and Estate
-
-
- Land which is currently up for auction
-
-
- Parcels which are on the mainland (Linden owned) continents
-
-
- Parcels which are on privately owned simulators
-
-
-
- The content rating of the event
-
-
-
- Event is PG
-
-
- Event is Mature
-
-
- Event is Adult
-
-
-
- Classified Ad Options
-
- There appear to be two formats the flags are packed in.
- This set of flags is for the newer style
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Classified ad query options
-
-
-
- Include all ads in results
-
-
- Include PG ads in results
-
-
- Include Mature ads in results
-
-
- Include Adult ads in results
-
-
-
- The For Sale flag in PlacesReplyData
-
-
-
- Parcel is not listed for sale
-
-
- Parcel is For Sale
-
-
-
- A classified ad on the grid
-
-
-
- UUID for this ad, useful for looking up detailed
- information about it
-
-
- The title of this classified ad
-
-
- Flags that show certain options applied to the classified
-
-
- Creation date of the ad
-
-
- Expiration date of the ad
-
-
- Price that was paid for this ad
-
-
- Print the struct data as a string
- A string containing the field name, and field value
-
-
-
- A parcel retrieved from the dataserver such as results from the
- "For-Sale" listings or "Places" Search
-
-
-
- The unique dataserver parcel ID
- This id is used to obtain additional information from the entry
- by using the method
-
-
- A string containing the name of the parcel
-
-
- The size of the parcel
- This field is not returned for Places searches
-
-
- The price of the parcel
- This field is not returned for Places searches
-
-
- If True, this parcel is flagged to be auctioned
-
-
- If true, this parcel is currently set for sale
-
-
- Parcel traffic
-
-
- Print the struct data as a string
- A string containing the field name, and field value
-
-
-
- An Avatar returned from the dataserver
-
-
-
- Online status of agent
- This field appears to be obsolete and always returns false
-
-
- The agents first name
-
-
- The agents last name
-
-
- The agents
-
-
- Print the struct data as a string
- A string containing the field name, and field value
-
-
-
- Response to a "Groups" Search
-
-
-
- The Group ID
-
-
- The name of the group
-
-
- The current number of members
-
-
- Print the struct data as a string
- A string containing the field name, and field value
-
-
-
- Parcel information returned from a request
-
- Represents one of the following:
- A parcel of land on the grid that has its Show In Search flag set
- A parcel of land owned by the agent making the request
- A parcel of land owned by a group the agent making the request is a member of
-
-
- In a request for Group Land, the First record will contain an empty record
-
- Note: This is not the same as searching the land for sale data source
-
-
-
- The ID of the Agent of Group that owns the parcel
-
-
- The name
-
-
- The description
-
-
- The Size of the parcel
-
-
- The billable Size of the parcel, for mainland
- parcels this will match the ActualArea field. For Group owned land this will be 10 percent smaller
- than the ActualArea. For Estate land this will always be 0
-
-
- Indicates the ForSale status of the parcel
-
-
- The Gridwide X position
-
-
- The Gridwide Y position
-
-
- The Z position of the parcel, or 0 if no landing point set
-
-
- The name of the Region the parcel is located in
-
-
- The Asset ID of the parcels Snapshot texture
-
-
- The calculated visitor traffic
-
-
- The billing product SKU
- Known values are:
-
- - 023Mainland / Full Region
- - 024Estate / Full Region
- - 027Estate / Openspace
- - 029Estate / Homestead
- - 129Mainland / Homestead (Linden Owned)
-
-
-
-
- No longer used, will always be 0
-
-
- Get a SL URL for the parcel
- A string, containing a standard SLURL
-
-
- Print the struct data as a string
- A string containing the field name, and field value
-
-
-
- An "Event" Listing summary
-
-
-
- The ID of the event creator
-
-
- The name of the event
-
-
- The events ID
-
-
- A string containing the short date/time the event will begin
-
-
- The event start time in Unixtime (seconds since epoch)
-
-
- The events maturity rating
-
-
- Print the struct data as a string
- A string containing the field name, and field value
-
-
-
- The details of an "Event"
-
-
-
- The events ID
-
-
- The ID of the event creator
-
-
- The name of the event
-
-
- The category
-
-
- The events description
-
-
- The short date/time the event will begin
-
-
- The event start time in Unixtime (seconds since epoch) UTC adjusted
-
-
- The length of the event in minutes
-
-
- 0 if no cover charge applies
-
-
- The cover charge amount in L$ if applicable
-
-
- The name of the region where the event is being held
-
-
- The gridwide location of the event
-
-
- The maturity rating
-
-
- Get a SL URL for the parcel where the event is hosted
- A string, containing a standard SLURL
-
-
- Print the struct data as a string
- A string containing the field name, and field value
-
-
- Contains the Event data returned from the data server from an EventInfoRequest
-
-
- Construct a new instance of the EventInfoReplyEventArgs class
- A single EventInfo object containing the details of an event
-
-
-
- A single EventInfo object containing the details of an event
-
-
-
- Contains the "Event" detail data returned from the data server
-
-
- Construct a new instance of the DirEventsReplyEventArgs class
- The ID of the query returned by the data server.
- This will correlate to the ID returned by the method
- A list containing the "Events" returned by the search query
-
-
- The ID returned by
-
-
- A list of "Events" returned by the data server
-
-
- Contains the "Event" list data returned from the data server
-
-
- Construct a new instance of PlacesReplyEventArgs class
- The ID of the query returned by the data server.
- This will correlate to the ID returned by the method
- A list containing the "Places" returned by the data server query
-
-
- The ID returned by
-
-
- A list of "Places" returned by the data server
-
-
- Contains the places data returned from the data server
-
-
- Construct a new instance of the DirPlacesReplyEventArgs class
- The ID of the query returned by the data server.
- This will correlate to the ID returned by the method
- A list containing land data returned by the data server
-
-
- The ID returned by
-
-
- A list containing Places data returned by the data server
-
-
- Contains the classified data returned from the data server
-
-
- Construct a new instance of the DirClassifiedsReplyEventArgs class
- A list of classified ad data returned from the data server
-
-
- A list containing Classified Ads returned by the data server
-
-
- Contains the group data returned from the data server
-
-
- Construct a new instance of the DirGroupsReplyEventArgs class
- The ID of the query returned by the data server.
- This will correlate to the ID returned by the method
- A list of groups data returned by the data server
-
-
- The ID returned by
-
-
- A list containing Groups data returned by the data server
-
-
- Contains the people data returned from the data server
-
-
- Construct a new instance of the DirPeopleReplyEventArgs class
- The ID of the query returned by the data server.
- This will correlate to the ID returned by the method
- A list of people data returned by the data server
-
-
- The ID returned by
-
-
- A list containing People data returned by the data server
-
-
- Contains the land sales data returned from the data server
-
-
- Construct a new instance of the DirLandReplyEventArgs class
- A list of parcels for sale returned by the data server
-
-
- A list containing land forsale data returned by the data server
-
-
-
+
+
+
+ OpenMetaverse
+
+
+
+
+ Return a decoded capabilities message as a strongly typed object
+
+ A string containing the name of the capabilities message key
+ An to decode
+ A strongly typed object containing the decoded information from the capabilities message, or null
+ if no existing Message object exists for the specified event
+
+
+
+ Type of return to use when returning objects from a parcel
+
+
+
+
+
+
+ Return objects owned by parcel owner
+
+
+ Return objects set to group
+
+
+ Return objects not owned by parcel owner or set to group
+
+
+ Return a specific list of objects on parcel
+
+
+ Return objects that are marked for-sale
+
+
+
+ Blacklist/Whitelist flags used in parcels Access List
+
+
+
+ Agent is denied access
+
+
+ Agent is granted access
+
+
+
+ The result of a request for parcel properties
+
+
+
+ No matches were found for the request
+
+
+ Request matched a single parcel
+
+
+ Request matched multiple parcels
+
+
+
+ Flags used in the ParcelAccessListRequest packet to specify whether
+ we want the access list (whitelist), ban list (blacklist), or both
+
+
+
+ Request the access list
+
+
+ Request the ban list
+
+
+ Request both White and Black lists
+
+
+
+ Sequence ID in ParcelPropertiesReply packets (sent when avatar
+ tries to cross a parcel border)
+
+
+
+ Parcel is currently selected
+
+
+ Parcel restricted to a group the avatar is not a
+ member of
+
+
+ Avatar is banned from the parcel
+
+
+ Parcel is restricted to an access list that the
+ avatar is not on
+
+
+ Response to hovering over a parcel
+
+
+
+ The tool to use when modifying terrain levels
+
+
+
+ Level the terrain
+
+
+ Raise the terrain
+
+
+ Lower the terrain
+
+
+ Smooth the terrain
+
+
+ Add random noise to the terrain
+
+
+ Revert terrain to simulator default
+
+
+
+ The tool size to use when changing terrain levels
+
+
+
+ Small
+
+
+ Medium
+
+
+ Large
+
+
+
+ Reasons agent is denied access to a parcel on the simulator
+
+
+
+ Agent is not denied, access is granted
+
+
+ Agent is not a member of the group set for the parcel, or which owns the parcel
+
+
+ Agent is not on the parcels specific allow list
+
+
+ Agent is on the parcels ban list
+
+
+ Unknown
+
+
+ Agent is not age verified and parcel settings deny access to non age verified avatars
+
+
+
+ Parcel overlay type. This is used primarily for highlighting and
+ coloring which is why it is a single integer instead of a set of
+ flags
+
+ These values seem to be poorly thought out. The first three
+ bits represent a single value, not flags. For example Auction (0x05) is
+ not a combination of OwnedByOther (0x01) and ForSale(0x04). However,
+ the BorderWest and BorderSouth values are bit flags that get attached
+ to the value stored in the first three bits. Bits four, five, and six
+ are unused
+
+
+ Public land
+
+
+ Land is owned by another avatar
+
+
+ Land is owned by a group
+
+
+ Land is owned by the current avatar
+
+
+ Land is for sale
+
+
+ Land is being auctioned
+
+
+ To the west of this area is a parcel border
+
+
+ To the south of this area is a parcel border
+
+
+
+ Various parcel properties
+
+
+
+ No flags set
+
+
+ Allow avatars to fly (a client-side only restriction)
+
+
+ Allow foreign scripts to run
+
+
+ This parcel is for sale
+
+
+ Allow avatars to create a landmark on this parcel
+
+
+ Allows all avatars to edit the terrain on this parcel
+
+
+ Avatars have health and can take damage on this parcel.
+ If set, avatars can be killed and sent home here
+
+
+ Foreign avatars can create objects here
+
+
+ All objects on this parcel can be purchased
+
+
+ Access is restricted to a group
+
+
+ Access is restricted to a whitelist
+
+
+ Ban blacklist is enabled
+
+
+ Unknown
+
+
+ List this parcel in the search directory
+
+
+ Allow personally owned parcels to be deeded to group
+
+
+ If Deeded, owner contributes required tier to group parcel is deeded to
+
+
+ Restrict sounds originating on this parcel to the
+ parcel boundaries
+
+
+ Objects on this parcel are sold when the land is
+ purchsaed
+
+
+ Allow this parcel to be published on the web
+
+
+ The information for this parcel is mature content
+
+
+ The media URL is an HTML page
+
+
+ The media URL is a raw HTML string
+
+
+ Restrict foreign object pushes
+
+
+ Ban all non identified/transacted avatars
+
+
+ Allow group-owned scripts to run
+
+
+ Allow object creation by group members or group
+ objects
+
+
+ Allow all objects to enter this parcel
+
+
+ Only allow group and owner objects to enter this parcel
+
+
+ Voice Enabled on this parcel
+
+
+ Use Estate Voice channel for Voice on this parcel
+
+
+ Deny Age Unverified Users
+
+
+
+ Parcel ownership status
+
+
+
+ Placeholder
+
+
+ Parcel is leased (owned) by an avatar or group
+
+
+ Parcel is in process of being leased (purchased) by an avatar or group
+
+
+ Parcel has been abandoned back to Governor Linden
+
+
+
+ Category parcel is listed in under search
+
+
+
+ No assigned category
+
+
+ Linden Infohub or public area
+
+
+ Adult themed area
+
+
+ Arts and Culture
+
+
+ Business
+
+
+ Educational
+
+
+ Gaming
+
+
+ Hangout or Club
+
+
+ Newcomer friendly
+
+
+ Parks and Nature
+
+
+ Residential
+
+
+ Shopping
+
+
+ Not Used?
+
+
+ Other
+
+
+ Not an actual category, only used for queries
+
+
+
+ Type of teleport landing for a parcel
+
+
+
+ Unset, simulator default
+
+
+ Specific landing point set for this parcel
+
+
+ No landing point set, direct teleports enabled for
+ this parcel
+
+
+
+ Parcel Media Command used in ParcelMediaCommandMessage
+
+
+
+ Stop the media stream and go back to the first frame
+
+
+ Pause the media stream (stop playing but stay on current frame)
+
+
+ Start the current media stream playing and stop when the end is reached
+
+
+ Start the current media stream playing,
+ loop to the beginning when the end is reached and continue to play
+
+
+ Specifies the texture to replace with video
+ If passing the key of a texture, it must be explicitly typecast as a key,
+ not just passed within double quotes.
+
+
+ Specifies the movie URL (254 characters max)
+
+
+ Specifies the time index at which to begin playing
+
+
+ Specifies a single agent to apply the media command to
+
+
+ Unloads the stream. While the stop command sets the texture to the first frame of the movie,
+ unload resets it to the real texture that the movie was replacing.
+
+
+ Turn on/off the auto align feature, similar to the auto align checkbox in the parcel media properties
+ (NOT to be confused with the "align" function in the textures view of the editor!) Takes TRUE or FALSE as parameter.
+
+
+ Allows a Web page or image to be placed on a prim (1.19.1 RC0 and later only).
+ Use "text/html" for HTML.
+
+
+ Resizes a Web page to fit on x, y pixels (1.19.1 RC0 and later only).
+ This might still not be working
+
+
+ Sets a description for the media being displayed (1.19.1 RC0 and later only).
+
+
+
+ Some information about a parcel of land returned from a DirectoryManager search
+
+
+
+ Global Key of record
+
+
+ Parcel Owners
+
+
+ Name field of parcel, limited to 128 characters
+
+
+ Description field of parcel, limited to 256 characters
+
+
+ Total Square meters of parcel
+
+
+ Total area billable as Tier, for group owned land this will be 10% less than ActualArea
+
+
+ True of parcel is in Mature simulator
+
+
+ Grid global X position of parcel
+
+
+ Grid global Y position of parcel
+
+
+ Grid global Z position of parcel (not used)
+
+
+ Name of simulator parcel is located in
+
+
+ Texture of parcels display picture
+
+
+ Float representing calculated traffic based on time spent on parcel by avatars
+
+
+ Sale price of parcel (not used)
+
+
+ Auction ID of parcel
+
+
+
+ Parcel Media Information
+
+
+
+ A byte, if 0x1 viewer should auto scale media to fit object
+
+
+ A boolean, if true the viewer should loop the media
+
+
+ The Asset UUID of the Texture which when applied to a
+ primitive will display the media
+
+
+ A URL which points to any Quicktime supported media type
+
+
+ A description of the media
+
+
+ An Integer which represents the height of the media
+
+
+ An integer which represents the width of the media
+
+
+ A string which contains the mime type of the media
+
+
+
+ Parcel of land, a portion of virtual real estate in a simulator
+
+
+
+ The total number of contiguous 4x4 meter blocks your agent owns within this parcel
+
+
+ The total number of contiguous 4x4 meter blocks contained in this parcel owned by a group or agent other than your own
+
+
+ Deprecated, Value appears to always be 0
+
+
+ Simulator-local ID of this parcel
+
+
+ UUID of the owner of this parcel
+
+
+ Whether the land is deeded to a group or not
+
+
+
+
+
+ Date land was claimed
+
+
+ Appears to always be zero
+
+
+ This field is no longer used
+
+
+ Minimum corner of the axis-aligned bounding box for this
+ parcel
+
+
+ Maximum corner of the axis-aligned bounding box for this
+ parcel
+
+
+ Bitmap describing land layout in 4x4m squares across the
+ entire region
+
+
+ Total parcel land area
+
+
+
+
+
+ Maximum primitives across the entire simulator owned by the same agent or group that owns this parcel that can be used
+
+
+ Total primitives across the entire simulator calculated by combining the allowed prim counts for each parcel
+ owned by the agent or group that owns this parcel
+
+
+ Maximum number of primitives this parcel supports
+
+
+ Total number of primitives on this parcel
+
+
+ For group-owned parcels this indicates the total number of prims deeded to the group,
+ for parcels owned by an individual this inicates the number of prims owned by the individual
+
+
+ Total number of primitives owned by the parcel group on
+ this parcel, or for parcels owned by an individual with a group set the
+ total number of prims set to that group.
+
+
+ Total number of prims owned by other avatars that are not set to group, or not the parcel owner
+
+
+ A bonus multiplier which allows parcel prim counts to go over times this amount, this does not affect
+ the max prims per simulator. e.g: 117 prim parcel limit x 1.5 bonus = 175 allowed
+
+
+ Autoreturn value in minutes for others' objects
+
+
+
+
+
+ Sale price of the parcel, only useful if ForSale is set
+ The SalePrice will remain the same after an ownership
+ transfer (sale), so it can be used to see the purchase price after
+ a sale if the new owner has not changed it
+
+
+ Parcel Name
+
+
+ Parcel Description
+
+
+ URL For Music Stream
+
+
+
+
+
+ Price for a temporary pass
+
+
+ How long is pass valid for
+
+
+
+
+
+ Key of authorized buyer
+
+
+ Key of parcel snapshot
+
+
+ The landing point location
+
+
+ The landing point LookAt
+
+
+ The type of landing enforced from the enum
+
+
+
+
+
+
+
+
+
+
+
+ Access list of who is whitelisted on this
+ parcel
+
+
+ Access list of who is blacklisted on this
+ parcel
+
+
+ TRUE of region denies access to age unverified users
+
+
+ true to obscure (hide) media url
+
+
+ true to obscure (hide) music url
+
+
+ A struct containing media details
+
+
+
+ Displays a parcel object in string format
+
+ string containing key=value pairs of a parcel object
+
+
+
+ Defalt constructor
+
+ Local ID of this parcel
+
+
+
+ Update the simulator with any local changes to this Parcel object
+
+ Simulator to send updates to
+ Whether we want the simulator to confirm
+ the update with a reply packet or not
+
+
+
+ Set Autoreturn time
+
+ Simulator to send the update to
+
+
+
+ Parcel (subdivided simulator lots) subsystem
+
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the ParcelDwellReply event
+ A ParcelDwellReplyEventArgs object containing the
+ data returned from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the ParcelInfoReply event
+ A ParcelInfoReplyEventArgs object containing the
+ data returned from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the ParcelProperties event
+ A ParcelPropertiesEventArgs object containing the
+ data returned from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the ParcelAccessListReply event
+ A ParcelAccessListReplyEventArgs object containing the
+ data returned from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the ParcelObjectOwnersReply event
+ A ParcelObjectOwnersReplyEventArgs object containing the
+ data returned from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the SimParcelsDownloaded event
+ A SimParcelsDownloadedEventArgs object containing the
+ data returned from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the ForceSelectObjectsReply event
+ A ForceSelectObjectsReplyEventArgs object containing the
+ data returned from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the ParcelMediaUpdateReply event
+ A ParcelMediaUpdateReplyEventArgs object containing the
+ data returned from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the ParcelMediaCommand event
+ A ParcelMediaCommandEventArgs object containing the
+ data returned from the simulator
+
+
+ Thread sync lock object
+
+
+
+ Default constructor
+
+ A reference to the GridClient object
+
+
+
+ Request basic information for a single parcel
+
+ Simulator-local ID of the parcel
+
+
+
+ Request properties of a single parcel
+
+ Simulator containing the parcel
+ Simulator-local ID of the parcel
+ An arbitrary integer that will be returned
+ with the ParcelProperties reply, useful for distinguishing between
+ multiple simultaneous requests
+
+
+
+ Request the access list for a single parcel
+
+ Simulator containing the parcel
+ Simulator-local ID of the parcel
+ An arbitrary integer that will be returned
+ with the ParcelAccessList reply, useful for distinguishing between
+ multiple simultaneous requests
+
+
+
+
+ Request properties of parcels using a bounding box selection
+
+ Simulator containing the parcel
+ Northern boundary of the parcel selection
+ Eastern boundary of the parcel selection
+ Southern boundary of the parcel selection
+ Western boundary of the parcel selection
+ An arbitrary integer that will be returned
+ with the ParcelProperties reply, useful for distinguishing between
+ different types of parcel property requests
+ A boolean that is returned with the
+ ParcelProperties reply, useful for snapping focus to a single
+ parcel
+
+
+
+ Request all simulator parcel properties (used for populating the Simulator.Parcels
+ dictionary)
+
+ Simulator to request parcels from (must be connected)
+
+
+
+ Request all simulator parcel properties (used for populating the Simulator.Parcels
+ dictionary)
+
+ Simulator to request parcels from (must be connected)
+ If TRUE, will force a full refresh
+ Number of milliseconds to pause in between each request
+
+
+
+ Request the dwell value for a parcel
+
+ Simulator containing the parcel
+ Simulator-local ID of the parcel
+
+
+
+ Send a request to Purchase a parcel of land
+
+ The Simulator the parcel is located in
+ The parcels region specific local ID
+ true if this parcel is being purchased by a group
+ The groups
+ true to remove tier contribution if purchase is successful
+ The parcels size
+ The purchase price of the parcel
+
+
+
+
+ Reclaim a parcel of land
+
+ The simulator the parcel is in
+ The parcels region specific local ID
+
+
+
+ Deed a parcel to a group
+
+ The simulator the parcel is in
+ The parcels region specific local ID
+ The groups
+
+
+
+ Request prim owners of a parcel of land.
+
+ Simulator parcel is in
+ The parcels region specific local ID
+
+
+
+ Return objects from a parcel
+
+ Simulator parcel is in
+ The parcels region specific local ID
+ the type of objects to return,
+ A list containing object owners s to return
+
+
+
+ Subdivide (split) a parcel
+
+
+
+
+
+
+
+
+
+ Join two parcels of land creating a single parcel
+
+
+
+
+
+
+
+
+
+ Get a parcels LocalID
+
+ Simulator parcel is in
+ Vector3 position in simulator (Z not used)
+ 0 on failure, or parcel LocalID on success.
+ A call to Parcels.RequestAllSimParcels
is required to populate map and
+ dictionary.
+
+
+
+ Terraform (raise, lower, etc) an area or whole parcel of land
+
+ Simulator land area is in.
+ LocalID of parcel, or -1 if using bounding box
+ From Enum, Raise, Lower, Level, Smooth, Etc.
+ Size of area to modify
+ true on successful request sent.
+ Settings.STORE_LAND_PATCHES must be true,
+ Parcel information must be downloaded using RequestAllSimParcels()
+
+
+
+ Terraform (raise, lower, etc) an area or whole parcel of land
+
+ Simulator land area is in.
+ west border of area to modify
+ south border of area to modify
+ east border of area to modify
+ north border of area to modify
+ From Enum, Raise, Lower, Level, Smooth, Etc.
+ Size of area to modify
+ true on successful request sent.
+ Settings.STORE_LAND_PATCHES must be true,
+ Parcel information must be downloaded using RequestAllSimParcels()
+
+
+
+ Terraform (raise, lower, etc) an area or whole parcel of land
+
+ Simulator land area is in.
+ LocalID of parcel, or -1 if using bounding box
+ west border of area to modify
+ south border of area to modify
+ east border of area to modify
+ north border of area to modify
+ From Enum, Raise, Lower, Level, Smooth, Etc.
+ Size of area to modify
+ How many meters + or - to lower, 1 = 1 meter
+ true on successful request sent.
+ Settings.STORE_LAND_PATCHES must be true,
+ Parcel information must be downloaded using RequestAllSimParcels()
+
+
+
+ Terraform (raise, lower, etc) an area or whole parcel of land
+
+ Simulator land area is in.
+ LocalID of parcel, or -1 if using bounding box
+ west border of area to modify
+ south border of area to modify
+ east border of area to modify
+ north border of area to modify
+ From Enum, Raise, Lower, Level, Smooth, Etc.
+ Size of area to modify
+ How many meters + or - to lower, 1 = 1 meter
+ Height at which the terraform operation is acting at
+
+
+
+ Sends a request to the simulator to return a list of objects owned by specific owners
+
+ Simulator local ID of parcel
+ Owners, Others, Etc
+ List containing keys of avatars objects to select;
+ if List is null will return Objects of type selectType
+ Response data is returned in the event
+
+
+
+ Eject and optionally ban a user from a parcel
+
+ target key of avatar to eject
+ true to also ban target
+
+
+
+ Freeze or unfreeze an avatar over your land
+
+ target key to freeze
+ true to freeze, false to unfreeze
+
+
+
+ Abandon a parcel of land
+
+ Simulator parcel is in
+ Simulator local ID of parcel
+
+
+
+ Requests the UUID of the parcel in a remote region at a specified location
+
+ Location of the parcel in the remote region
+ Remote region handle
+ Remote region UUID
+ If successful UUID of the remote parcel, UUID.Zero otherwise
+
+
+
+ Retrieves information on resources used by the parcel
+
+ UUID of the parcel
+ Should per object resource usage be requested
+ Callback invoked when the request is complete
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+ Raises the event
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+ Raises the event
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+ Raises the event
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+ Raises the event
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+ Raises the event
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+ Raises the event
+
+
+ Raised when the simulator responds to a request
+
+
+ Raised when the simulator responds to a request
+
+
+ Raised when the simulator responds to a request
+
+
+ Raised when the simulator responds to a request
+
+
+ Raised when the simulator responds to a request
+
+
+ Raised when the simulator responds to a request
+
+
+ Raised when the simulator responds to a request
+
+
+ Raised when the simulator responds to a Parcel Update request
+
+
+ Raised when the parcel your agent is located sends a ParcelMediaCommand
+
+
+
+ Parcel Accesslist
+
+
+
+ Agents
+
+
+
+
+
+ Flags for specific entry in white/black lists
+
+
+
+ Owners of primitives on parcel
+
+
+
+ Prim Owners
+
+
+ True of owner is group
+
+
+ Total count of prims owned by OwnerID
+
+
+ true of OwnerID is currently online and is not a group
+
+
+ The date of the most recent prim left by OwnerID
+
+
+
+ Called once parcel resource usage information has been collected
+
+ Indicates if operation was successfull
+ Parcel resource usage information
+
+
+ Contains a parcels dwell data returned from the simulator in response to an
+
+
+
+ Construct a new instance of the ParcelDwellReplyEventArgs class
+
+ The global ID of the parcel
+ The simulator specific ID of the parcel
+ The calculated dwell for the parcel
+
+
+ Get the global ID of the parcel
+
+
+ Get the simulator specific ID of the parcel
+
+
+ Get the calculated dwell
+
+
+ Contains basic parcel information data returned from the
+ simulator in response to an request
+
+
+
+ Construct a new instance of the ParcelInfoReplyEventArgs class
+
+ The object containing basic parcel info
+
+
+ Get the object containing basic parcel info
+
+
+ Contains basic parcel information data returned from the simulator in response to an request
+
+
+
+ Construct a new instance of the ParcelPropertiesEventArgs class
+
+ The object containing the details
+ The object containing the details
+ The result of the request
+ The number of primitieves your agent is
+ currently selecting and or sitting on in this parcel
+ The user assigned ID used to correlate a request with
+ these results
+ TODO:
+
+
+ Get the simulator the parcel is located in
+
+
+ Get the object containing the details
+ If Result is NoData, this object will not contain valid data
+
+
+ Get the result of the request
+
+
+ Get the number of primitieves your agent is
+ currently selecting and or sitting on in this parcel
+
+
+ Get the user assigned ID used to correlate a request with
+ these results
+
+
+ TODO:
+
+
+ Contains blacklist and whitelist data returned from the simulator in response to an request
+
+
+
+ Construct a new instance of the ParcelAccessListReplyEventArgs class
+
+ The simulator the parcel is located in
+ The user assigned ID used to correlate a request with
+ these results
+ The simulator specific ID of the parcel
+ TODO:
+ The list containing the white/blacklisted agents for the parcel
+
+
+ Get the simulator the parcel is located in
+
+
+ Get the user assigned ID used to correlate a request with
+ these results
+
+
+ Get the simulator specific ID of the parcel
+
+
+ TODO:
+
+
+ Get the list containing the white/blacklisted agents for the parcel
+
+
+ Contains blacklist and whitelist data returned from the
+ simulator in response to an request
+
+
+
+ Construct a new instance of the ParcelObjectOwnersReplyEventArgs class
+
+ The simulator the parcel is located in
+ The list containing prim ownership counts
+
+
+ Get the simulator the parcel is located in
+
+
+ Get the list containing prim ownership counts
+
+
+ Contains the data returned when all parcel data has been retrieved from a simulator
+
+
+
+ Construct a new instance of the SimParcelsDownloadedEventArgs class
+
+ The simulator the parcel data was retrieved from
+ The dictionary containing the parcel data
+ The multidimensional array containing a x,y grid mapped
+ to each 64x64 parcel's LocalID.
+
+
+ Get the simulator the parcel data was retrieved from
+
+
+ A dictionary containing the parcel data where the key correlates to the ParcelMap entry
+
+
+ Get the multidimensional array containing a x,y grid mapped
+ to each 64x64 parcel's LocalID.
+
+
+ Contains the data returned when a request
+
+
+
+ Construct a new instance of the ForceSelectObjectsReplyEventArgs class
+
+ The simulator the parcel data was retrieved from
+ The list of primitive IDs
+ true if the list is clean and contains the information
+ only for a given request
+
+
+ Get the simulator the parcel data was retrieved from
+
+
+ Get the list of primitive IDs
+
+
+ true if the list is clean and contains the information
+ only for a given request
+
+
+ Contains data when the media data for a parcel the avatar is on changes
+
+
+
+ Construct a new instance of the ParcelMediaUpdateReplyEventArgs class
+
+ the simulator the parcel media data was updated in
+ The updated media information
+
+
+ Get the simulator the parcel media data was updated in
+
+
+ Get the updated media information
+
+
+ Contains the media command for a parcel the agent is currently on
+
+
+
+ Construct a new instance of the ParcelMediaCommandEventArgs class
+
+ The simulator the parcel media command was issued in
+
+
+ The media command that was sent
+
+
+
+ Get the simulator the parcel media command was issued in
+
+
+
+
+
+
+
+
+ Get the media command that was sent
+
+
+
+
+
+
+ Represents an Animation
+
+
+
+
+ Base class for all Asset types
+
+
+
+ A byte array containing the raw asset data
+
+
+ True if the asset it only stored on the server temporarily
+
+
+ A unique ID
+
+
+
+ Construct a new Asset object
+
+
+
+
+ Construct a new Asset object
+
+ A unique specific to this asset
+ A byte array containing the raw asset data
+
+
+
+ Regenerates the AssetData
byte array from the properties
+ of the derived class.
+
+
+
+
+ Decodes the AssetData, placing it in appropriate properties of the derived
+ class.
+
+ True if the asset decoding succeeded, otherwise false
+
+
+ The assets unique ID
+
+
+
+ The "type" of asset, Notecard, Animation, etc
+
+
+
+ Default Constructor
+
+
+
+ Construct an Asset object of type Animation
+
+ A unique specific to this asset
+ A byte array containing the raw asset data
+
+
+ Override the base classes AssetType
+
+
+
+ Operation to apply when applying color to texture
+
+
+
+
+ Information needed to translate visual param value to RGBA color
+
+
+
+
+ Construct VisualColorParam
+
+ Operation to apply when applying color to texture
+ Colors
+
+
+
+ Represents alpha blending and bump infor for a visual parameter
+ such as sleive length
+
+
+
+ Stregth of the alpha to apply
+
+
+ File containing the alpha channel
+
+
+ Skip blending if parameter value is 0
+
+
+ Use miltiply insted of alpha blending
+
+
+
+ Create new alhpa information for a visual param
+
+ Stregth of the alpha to apply
+ File containing the alpha channel
+ Skip blending if parameter value is 0
+ Use miltiply insted of alpha blending
+
+
+
+ A single visual characteristic of an avatar mesh, such as eyebrow height
+
+
+
+ Index of this visual param
+
+
+ Internal name
+
+
+ Group ID this parameter belongs to
+
+
+ Name of the wearable this parameter belongs to
+
+
+ Displayable label of this characteristic
+
+
+ Displayable label for the minimum value of this characteristic
+
+
+ Displayable label for the maximum value of this characteristic
+
+
+ Default value
+
+
+ Minimum value
+
+
+ Maximum value
+
+
+ Is this param used for creation of bump layer?
+
+
+ Alpha blending/bump info
+
+
+ Color information
+
+
+ Array of param IDs that are drivers for this parameter
+
+
+
+ Set all the values through the constructor
+
+ Index of this visual param
+ Internal name
+
+
+ Displayable label of this characteristic
+ Displayable label for the minimum value of this characteristic
+ Displayable label for the maximum value of this characteristic
+ Default value
+ Minimum value
+ Maximum value
+ Is this param used for creation of bump layer?
+ Array of param IDs that are drivers for this parameter
+ Alpha blending/bump info
+ Color information
+
+
+
+ Holds the Params array of all the avatar appearance parameters
+
+
+
+
+
+
+
+
+ OK
+
+
+ Transfer completed
+
+
+
+
+
+
+
+
+ Unknown error occurred
+
+
+ Equivalent to a 404 error
+
+
+ Client does not have permission for that resource
+
+
+ Unknown status
+
+
+
+
+
+
+
+
+
+
+ Unknown
+
+
+ Virtually all asset transfers use this channel
+
+
+
+
+
+
+
+
+
+
+ Asset from the asset server
+
+
+ Inventory item
+
+
+ Estate asset, such as an estate covenant
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Image file format
+
+
+
+
+
+
+
+
+ Number of milliseconds passed since the last transfer
+ packet was received
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Number of milliseconds to wait for a transfer header packet if out of order data was received
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the XferReceived event
+ A XferReceivedEventArgs object containing the
+ data returned from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the AssetUploaded event
+ A AssetUploadedEventArgs object containing the
+ data returned from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the UploadProgress event
+ A UploadProgressEventArgs object containing the
+ data returned from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the InitiateDownload event
+ A InitiateDownloadEventArgs object containing the
+ data returned from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the ImageReceiveProgress event
+ A ImageReceiveProgressEventArgs object containing the
+ data returned from the simulator
+
+
+ Thread sync lock object
+
+
+ Texture download cache
+
+
+
+ Default constructor
+
+ A reference to the GridClient object
+
+
+
+ Request an asset download
+
+ Asset UUID
+ Asset type, must be correct for the transfer to succeed
+ Whether to give this transfer an elevated priority
+ The callback to fire when the simulator responds with the asset data
+
+
+
+ Request an asset download
+
+ Asset UUID
+ Asset type, must be correct for the transfer to succeed
+ Whether to give this transfer an elevated priority
+ Source location of the requested asset
+ The callback to fire when the simulator responds with the asset data
+
+
+
+ Request an asset download
+
+ Asset UUID
+ Asset type, must be correct for the transfer to succeed
+ Whether to give this transfer an elevated priority
+ Source location of the requested asset
+ UUID of the transaction
+ The callback to fire when the simulator responds with the asset data
+
+
+
+ Request an asset download through the almost deprecated Xfer system
+
+ Filename of the asset to request
+ Whether or not to delete the asset
+ off the server after it is retrieved
+ Use large transfer packets or not
+ UUID of the file to request, if filename is
+ left empty
+ Asset type of vFileID
, or
+ AssetType.Unknown
if filename is not empty
+ Sets the FilePath in the request to Cache
+ (4) if true, otherwise Unknown (0) is used
+
+
+
+
+
+
+ Use UUID.Zero if you do not have the
+ asset ID but have all the necessary permissions
+ The item ID of this asset in the inventory
+ Use UUID.Zero if you are not requesting an
+ asset from an object inventory
+ The owner of this asset
+ Asset type
+ Whether to prioritize this asset download or not
+
+
+
+
+ Used to force asset data into the PendingUpload property, ie: for raw terrain uploads
+
+ An AssetUpload object containing the data to upload to the simulator
+
+
+
+ Request an asset be uploaded to the simulator
+
+ The Object containing the asset data
+ If True, the asset once uploaded will be stored on the simulator
+ in which the client was connected in addition to being stored on the asset server
+ The of the transfer, can be used to correlate the upload with
+ events being fired
+
+
+
+ Request an asset be uploaded to the simulator
+
+ The of the asset being uploaded
+ A byte array containing the encoded asset data
+ If True, the asset once uploaded will be stored on the simulator
+ in which the client was connected in addition to being stored on the asset server
+ The of the transfer, can be used to correlate the upload with
+ events being fired
+
+
+
+ Request an asset be uploaded to the simulator
+
+
+ Asset type to upload this data as
+ A byte array containing the encoded asset data
+ If True, the asset once uploaded will be stored on the simulator
+ in which the client was connected in addition to being stored on the asset server
+ The of the transfer, can be used to correlate the upload with
+ events being fired
+
+
+
+ Initiate an asset upload
+
+ The ID this asset will have if the
+ upload succeeds
+ Asset type to upload this data as
+ Raw asset data to upload
+ Whether to store this asset on the local
+ simulator or the grid-wide asset server
+ The tranaction id for the upload
+ The transaction ID of this transfer
+
+
+
+ Request a texture asset from the simulator using the system to
+ manage the requests and re-assemble the image from the packets received from the simulator
+
+ The of the texture asset to download
+ The of the texture asset.
+ Use for most textures, or for baked layer texture assets
+ A float indicating the requested priority for the transfer. Higher priority values tell the simulator
+ to prioritize the request before lower valued requests. An image already being transferred using the can have
+ its priority changed by resending the request with the new priority value
+ Number of quality layers to discard.
+ This controls the end marker of the data sent. Sending with value -1 combined with priority of 0 cancels an in-progress
+ transfer.
+ A bug exists in the Linden Simulator where a -1 will occasionally be sent with a non-zero priority
+ indicating an off-by-one error.
+ The packet number to begin the request at. A value of 0 begins the request
+ from the start of the asset texture
+ The callback to fire when the image is retrieved. The callback
+ will contain the result of the request and the texture asset data
+ If true, the callback will be fired for each chunk of the downloaded image.
+ The callback asset parameter will contain all previously received chunks of the texture asset starting
+ from the beginning of the request
+
+ Request an image and fire a callback when the request is complete
+
+ Client.Assets.RequestImage(UUID.Parse("c307629f-e3a1-4487-5e88-0d96ac9d4965"), ImageType.Normal, TextureDownloader_OnDownloadFinished);
+
+ private void TextureDownloader_OnDownloadFinished(TextureRequestState state, AssetTexture asset)
+ {
+ if(state == TextureRequestState.Finished)
+ {
+ Console.WriteLine("Texture {0} ({1} bytes) has been successfully downloaded",
+ asset.AssetID,
+ asset.AssetData.Length);
+ }
+ }
+
+ Request an image and use an inline anonymous method to handle the downloaded texture data
+
+ Client.Assets.RequestImage(UUID.Parse("c307629f-e3a1-4487-5e88-0d96ac9d4965"), ImageType.Normal, delegate(TextureRequestState state, AssetTexture asset)
+ {
+ if(state == TextureRequestState.Finished)
+ {
+ Console.WriteLine("Texture {0} ({1} bytes) has been successfully downloaded",
+ asset.AssetID,
+ asset.AssetData.Length);
+ }
+ }
+ );
+
+ Request a texture, decode the texture to a bitmap image and apply it to a imagebox
+
+ Client.Assets.RequestImage(UUID.Parse("c307629f-e3a1-4487-5e88-0d96ac9d4965"), ImageType.Normal, TextureDownloader_OnDownloadFinished);
+
+ private void TextureDownloader_OnDownloadFinished(TextureRequestState state, AssetTexture asset)
+ {
+ if(state == TextureRequestState.Finished)
+ {
+ ManagedImage imgData;
+ Image bitmap;
+
+ if (state == TextureRequestState.Finished)
+ {
+ OpenJPEG.DecodeToImage(assetTexture.AssetData, out imgData, out bitmap);
+ picInsignia.Image = bitmap;
+ }
+ }
+ }
+
+
+
+
+
+ Overload: Request a texture asset from the simulator using the system to
+ manage the requests and re-assemble the image from the packets received from the simulator
+
+ The of the texture asset to download
+ The callback to fire when the image is retrieved. The callback
+ will contain the result of the request and the texture asset data
+
+
+
+ Overload: Request a texture asset from the simulator using the system to
+ manage the requests and re-assemble the image from the packets received from the simulator
+
+ The of the texture asset to download
+ The of the texture asset.
+ Use for most textures, or for baked layer texture assets
+ The callback to fire when the image is retrieved. The callback
+ will contain the result of the request and the texture asset data
+
+
+
+ Overload: Request a texture asset from the simulator using the system to
+ manage the requests and re-assemble the image from the packets received from the simulator
+
+ The of the texture asset to download
+ The of the texture asset.
+ Use for most textures, or for baked layer texture assets
+ The callback to fire when the image is retrieved. The callback
+ will contain the result of the request and the texture asset data
+ If true, the callback will be fired for each chunk of the downloaded image.
+ The callback asset parameter will contain all previously received chunks of the texture asset starting
+ from the beginning of the request
+
+
+
+ Cancel a texture request
+
+ The texture assets
+
+
+
+ Lets TexturePipeline class fire the progress event
+
+ The texture ID currently being downloaded
+ the number of bytes transferred
+ the total number of bytes expected
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Raised when the simulator responds sends
+
+
+ Raised during upload completes
+
+
+ Raised during upload with progres update
+
+
+ Fired when the simulator sends an InitiateDownloadPacket, used to download terrain .raw files
+
+
+ Fired when a texture is in the process of being downloaded by the TexturePipeline class
+
+
+
+ Callback used for various asset download requests
+
+ Transfer information
+ Downloaded asset, null on fail
+
+
+
+ Callback used upon competition of baked texture upload
+
+ Asset UUID of the newly uploaded baked texture
+
+
+ Xfer data
+
+
+ Upload data
+
+
+ Filename used on the simulator
+
+
+ Filename used by the client
+
+
+ UUID of the image that is in progress
+
+
+ Number of bytes received so far
+
+
+ Image size in bytes
+
+
+
+ This is used to get a list of audio devices that can be used for capture (input) of voice.
+
+
+
+
+
+ This is used to get a list of audio devices that can be used for render (playback) of voice.
+
+
+
+
+ This command is used to select the render device.
+
+ The name of the device as returned by the Aux.GetRenderDevices command.
+
+
+
+ This command is used to select the capture device.
+
+ The name of the device as returned by the Aux.GetCaptureDevices command.
+
+
+
+ This command is used to start the audio capture process which will cause
+ AuxAudioProperty Events to be raised. These events can be used to display a
+ microphone VU meter for the currently selected capture device. This command
+ should not be issued if the user is on a call.
+
+ (unused but required)
+
+
+
+
+ This command is used to stop the audio capture process.
+
+
+
+
+
+ This command is used to set the mic volume while in the audio tuning process.
+ Once an acceptable mic level is attained, the application must issue a
+ connector set mic volume command to have that level be used while on voice
+ calls.
+
+ the microphone volume (-100 to 100 inclusive)
+
+
+
+
+ This command is used to set the speaker volume while in the audio tuning
+ process. Once an acceptable speaker level is attained, the application must
+ issue a connector set speaker volume command to have that level be used while
+ on voice calls.
+
+ the speaker volume (-100 to 100 inclusive)
+
+
+
+
+ Starts a thread that keeps the daemon running
+
+
+
+
+
+
+ Stops the daemon and the thread keeping it running
+
+
+
+
+
+
+
+
+
+
+
+
+ Create a Session
+ Sessions typically represent a connection to a media session with one or more
+ participants. This is used to generate an ‘outbound’ call to another user or
+ channel. The specifics depend on the media types involved. A session handle is
+ required to control the local user functions within the session (or remote
+ users if the current account has rights to do so). Currently creating a
+ session automatically connects to the audio media, there is no need to call
+ Session.Connect at this time, this is reserved for future use.
+
+ Handle returned from successful Connector ‘create’ request
+ This is the URI of the terminating point of the session (ie who/what is being called)
+ This is the display name of the entity being called (user or channel)
+ Only needs to be supplied when the target URI is password protected
+ This indicates the format of the password as passed in. This can either be
+ “ClearText” or “SHA1UserName”. If this element does not exist, it is assumed to be “ClearText”. If it is
+ “SHA1UserName”, the password as passed in is the SHA1 hash of the password and username concatenated together,
+ then base64 encoded, with the final “=” character stripped off.
+
+
+
+
+
+
+ Used to accept a call
+
+ SessionHandle such as received from SessionNewEvent
+ "default"
+
+
+
+
+ This command is used to start the audio render process, which will then play
+ the passed in file through the selected audio render device. This command
+ should not be issued if the user is on a call.
+
+ The fully qualified path to the sound file.
+ True if the file is to be played continuously and false if it is should be played once.
+
+
+
+
+ This command is used to stop the audio render process.
+
+ The fully qualified path to the sound file issued in the start render command.
+
+
+
+
+ This is used to ‘end’ an established session (i.e. hang-up or disconnect).
+
+ Handle returned from successful Session ‘create’ request or a SessionNewEvent
+
+
+
+
+ Set the combined speaking and listening position in 3D space.
+
+ Handle returned from successful Session ‘create’ request or a SessionNewEvent
+ Speaking position
+ Listening position
+
+
+
+
+ Set User Volume for a particular user. Does not affect how other users hear that user.
+
+ Handle returned from successful Session ‘create’ request or a SessionNewEvent
+
+ The level of the audio, a number between -100 and 100 where 0 represents ‘normal’ speaking volume
+
+
+
+
+ Start up the Voice service.
+
+
+
+
+ Handle miscellaneous request status
+
+
+
+ ///If something goes wrong, we log it.
+
+
+
+ Cleanup oject resources
+
+
+
+
+ Request voice cap when changing regions
+
+
+
+
+ Handle a change in session state
+
+
+
+
+ Close a voice session
+
+
+
+
+
+ Locate a Session context from its handle
+
+ Creates the session context if it does not exist.
+
+
+
+ Handle completion of main voice cap request.
+
+
+
+
+
+
+
+ Daemon has started so connect to it.
+
+
+
+
+ The daemon TCP connection is open.
+
+
+
+
+ Handle creation of the Connector.
+
+
+
+
+ Handle response to audio output device query
+
+
+
+
+ Handle response to audio input device query
+
+
+
+
+ Set voice channel for new parcel
+
+
+
+
+
+ Request info from a parcel capability Uri.
+
+
+
+
+
+ Receive parcel voice cap
+
+
+
+
+
+
+
+ Tell Vivox where we are standing
+
+ This has to be called when we move or turn.
+
+
+
+ Start and stop updating out position.
+
+
+
+
+
+ This is used to initialize and stop the Connector as a whole. The Connector
+ Create call must be completed successfully before any other requests are made
+ (typically during application initialization). The shutdown should be called
+ when the application is shutting down to gracefully release resources
+
+ A string value indicting the Application name
+ URL for the management server
+ LoggingSettings
+
+
+
+
+
+ Shutdown Connector -- Should be called when the application is shutting down
+ to gracefully release resources
+
+ Handle returned from successful Connector ‘create’ request
+
+
+
+ Mute or unmute the microphone
+
+ Handle returned from successful Connector ‘create’ request
+ true (mute) or false (unmute)
+
+
+
+ Mute or unmute the speaker
+
+ Handle returned from successful Connector ‘create’ request
+ true (mute) or false (unmute)
+
+
+
+ Set microphone volume
+
+ Handle returned from successful Connector ‘create’ request
+ The level of the audio, a number between -100 and 100 where
+ 0 represents ‘normal’ speaking volume
+
+
+
+ Set local speaker volume
+
+ Handle returned from successful Connector ‘create’ request
+ The level of the audio, a number between -100 and 100 where
+ 0 represents ‘normal’ speaking volume
+
+
+
+ This is used to login a specific user account(s). It may only be called after
+ Connector initialization has completed successfully
+
+ Handle returned from successful Connector ‘create’ request
+ User's account name
+ User's account password
+ Values may be “AutoAnswer” or “VerifyAnswer”
+ ""
+ This is an integer that specifies how often
+ the daemon will send participant property events while in a channel. If this is not set
+ the default will be “on state change”, which means that the events will be sent when
+ the participant starts talking, stops talking, is muted, is unmuted.
+ The valid values are:
+ 0 – Never
+ 5 – 10 times per second
+ 10 – 5 times per second
+ 50 – 1 time per second
+ 100 – on participant state change (this is the default)
+ false
+
+
+
+
+ This is used to logout a user session. It should only be called with a valid AccountHandle.
+
+ Handle returned from successful Connector ‘login’ request
+
+
+
+
+ Event for most mundane request reposnses.
+
+
+
+ Response to Connector.Create request
+
+
+ Response to Aux.GetCaptureDevices request
+
+
+ Response to Aux.GetRenderDevices request
+
+
+ Audio Properties Events are sent after audio capture is started.
+ These events are used to display a microphone VU meter
+
+
+ Response to Account.Login request
+
+
+ This event message is sent whenever the login state of the
+ particular Account has transitioned from one value to another
+
+
+
+ List of audio input devices
+
+
+
+
+ List of audio output devices
+
+
+
+
+ Set audio test mode
+
+
+
+ Enable logging
+
+
+ The folder where any logs will be created
+
+
+ This will be prepended to beginning of each log file
+
+
+ The suffix or extension to be appended to each log file
+
+
+
+ 0: NONE - No logging
+ 1: ERROR - Log errors only
+ 2: WARNING - Log errors and warnings
+ 3: INFO - Log errors, warnings and info
+ 4: DEBUG - Log errors, warnings, info and debug
+
+
+
+
+ Constructor for default logging settings
+
+
+
+ Audio Properties Events are sent after audio capture is started. These events are used to display a microphone VU meter
+
+
+
+ The current status of a texture request as it moves through the pipeline or final result of a texture request.
+
+
+
+ The initial state given to a request. Requests in this state
+ are waiting for an available slot in the pipeline
+
+
+ A request that has been added to the pipeline and the request packet
+ has been sent to the simulator
+
+
+ A request that has received one or more packets back from the simulator
+
+
+ A request that has received all packets back from the simulator
+
+
+ A request that has taken longer than
+ to download OR the initial packet containing the packet information was never received
+
+
+ The texture request was aborted by request of the agent
+
+
+ The simulator replied to the request that it was not able to find the requested texture
+
+
+
+ A callback fired to indicate the status or final state of the requested texture. For progressive
+ downloads this will fire each time new asset data is returned from the simulator.
+
+ The indicating either Progress for textures not fully downloaded,
+ or the final result of the request after it has been processed through the TexturePipeline
+ The object containing the Assets ID, raw data
+ and other information. For progressive rendering the will contain
+ the data from the beginning of the file. For failed, aborted and timed out requests it will contain
+ an empty byte array.
+
+
+
+ Texture request download handler, allows a configurable number of download slots which manage multiple
+ concurrent texture downloads from the
+
+ This class makes full use of the internal
+ system for full texture downloads.
+
+
+ A dictionary containing all pending and in-process transfer requests where the Key is both the RequestID
+ and also the Asset Texture ID, and the value is an object containing the current state of the request and also
+ the asset data as it is being re-assembled
+
+
+ Holds the reference to the client object
+
+
+ Maximum concurrent texture requests allowed at a time
+
+
+ An array of objects used to manage worker request threads
+
+
+ An array of worker slots which shows the availablity status of the slot
+
+
+ The primary thread which manages the requests.
+
+
+ true if the TexturePipeline is currently running
+
+
+ A synchronization object used by the primary thread
+
+
+ A refresh timer used to increase the priority of stalled requests
+
+
+
+ Default constructor, Instantiates a new copy of the TexturePipeline class
+
+ Reference to the instantiated object
+
+
+
+ Initialize callbacks required for the TexturePipeline to operate
+
+
+
+
+ Shutdown the TexturePipeline and cleanup any callbacks or transfers
+
+
+
+
+ Request a texture asset from the simulator using the system to
+ manage the requests and re-assemble the image from the packets received from the simulator
+
+ The of the texture asset to download
+ The of the texture asset.
+ Use for most textures, or for baked layer texture assets
+ A float indicating the requested priority for the transfer. Higher priority values tell the simulator
+ to prioritize the request before lower valued requests. An image already being transferred using the can have
+ its priority changed by resending the request with the new priority value
+ Number of quality layers to discard.
+ This controls the end marker of the data sent
+ The packet number to begin the request at. A value of 0 begins the request
+ from the start of the asset texture
+ The callback to fire when the image is retrieved. The callback
+ will contain the result of the request and the texture asset data
+ If true, the callback will be fired for each chunk of the downloaded image.
+ The callback asset parameter will contain all previously received chunks of the texture asset starting
+ from the beginning of the request
+
+
+
+ Sends the actual request packet to the simulator
+
+ The image to download
+ Type of the image to download, either a baked
+ avatar texture or a normal texture
+ Priority level of the download. Default is
+ 1,013,000.0f
+ Number of quality layers to discard.
+ This controls the end marker of the data sent
+ Packet number to start the download at.
+ This controls the start marker of the data sent
+ Sending a priority of 0 and a discardlevel of -1 aborts
+ download
+
+
+
+ Cancel a pending or in process texture request
+
+ The texture assets unique ID
+
+
+
+ Master Download Thread, Queues up downloads in the threadpool
+
+
+
+
+ The worker thread that sends the request and handles timeouts
+
+ A object containing the request details
+
+
+
+ Handle responses from the simulator that tell us a texture we have requested is unable to be located
+ or no longer exists. This will remove the request from the pipeline and free up a slot if one is in use
+
+ The sender
+ The EventArgs object containing the packet data
+
+
+
+ Handles the remaining Image data that did not fit in the initial ImageData packet
+
+ The sender
+ The EventArgs object containing the packet data
+
+
+
+ Handle the initial ImageDataPacket sent from the simulator
+
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Current number of pending and in-process transfers
+
+
+
+ A request task containing information and status of a request as it is processed through the
+
+
+
+ The current which identifies the current status of the request
+
+
+ The Unique Request ID, This is also the Asset ID of the texture being requested
+
+
+ The slot this request is occupying in the threadpoolSlots array
+
+
+ The ImageType of the request.
+
+
+ The callback to fire when the request is complete, will include
+ the and the
+ object containing the result data
+
+
+ If true, indicates the callback will be fired whenever new data is returned from the simulator.
+ This is used to progressively render textures as portions of the texture are received.
+
+
+ An object that maintains the data of an request thats in-process.
+
+
+
+
+
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the AttachedSound Event
+ A AttachedSoundEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the AttachedSoundGainChange Event
+ A AttachedSoundGainChangeEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the SoundTrigger Event
+ A SoundTriggerEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the PreloadSound Event
+ A PreloadSoundEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+
+ Construct a new instance of the SoundManager class, used for playing and receiving
+ sound assets
+
+ A reference to the current GridClient instance
+
+
+
+ Plays a sound in the current region at full volume from avatar position
+
+ UUID of the sound to be played
+
+
+
+ Plays a sound in the current region at full volume
+
+ UUID of the sound to be played.
+ position for the sound to be played at. Normally the avatar.
+
+
+
+ Plays a sound in the current region
+
+ UUID of the sound to be played.
+ position for the sound to be played at. Normally the avatar.
+ volume of the sound, from 0.0 to 1.0
+
+
+
+ Plays a sound in the specified sim
+
+ UUID of the sound to be played.
+ UUID of the sound to be played.
+ position for the sound to be played at. Normally the avatar.
+ volume of the sound, from 0.0 to 1.0
+
+
+
+ Play a sound asset
+
+ UUID of the sound to be played.
+ handle id for the sim to be played in.
+ position for the sound to be played at. Normally the avatar.
+ volume of the sound, from 0.0 to 1.0
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Raised when the simulator sends us data containing
+ sound
+
+
+ Raised when the simulator sends us data containing
+ ...
+
+
+ Raised when the simulator sends us data containing
+ ...
+
+
+ Raised when the simulator sends us data containing
+ ...
+
+
+ Provides data for the event
+ The event occurs when the simulator sends
+ the sound data which emits from an agents attachment
+
+ The following code example shows the process to subscribe to the event
+ and a stub to handle the data passed from the simulator
+
+ // Subscribe to the AttachedSound event
+ Client.Sound.AttachedSound += Sound_AttachedSound;
+
+ // process the data raised in the event here
+ private void Sound_AttachedSound(object sender, AttachedSoundEventArgs e)
+ {
+ // ... Process AttachedSoundEventArgs here ...
+ }
+
+
+
+
+
+ Construct a new instance of the SoundTriggerEventArgs class
+
+ Simulator where the event originated
+ The sound asset id
+ The ID of the owner
+ The ID of the object
+ The volume level
+ The
+
+
+ Simulator where the event originated
+
+
+ Get the sound asset id
+
+
+ Get the ID of the owner
+
+
+ Get the ID of the Object
+
+
+ Get the volume level
+
+
+ Get the
+
+
+ Provides data for the event
+ The event occurs when an attached sound
+ changes its volume level
+
+
+
+ Construct a new instance of the AttachedSoundGainChangedEventArgs class
+
+ Simulator where the event originated
+ The ID of the Object
+ The new volume level
+
+
+ Simulator where the event originated
+
+
+ Get the ID of the Object
+
+
+ Get the volume level
+
+
+ Provides data for the event
+ The event occurs when the simulator forwards
+ a request made by yourself or another agent to play either an asset sound or a built in sound
+
+ Requests to play sounds where the is not one of the built-in
+ will require sending a request to download the sound asset before it can be played
+
+
+ The following code example uses the ,
+ and
+ properties to display some information on a sound request on the window.
+
+ // subscribe to the event
+ Client.Sound.SoundTrigger += Sound_SoundTrigger;
+
+ // play the pre-defined BELL_TING sound
+ Client.Sound.SendSoundTrigger(Sounds.BELL_TING);
+
+ // handle the response data
+ private void Sound_SoundTrigger(object sender, SoundTriggerEventArgs e)
+ {
+ Console.WriteLine("{0} played the sound {1} at volume {2}",
+ e.OwnerID, e.SoundID, e.Gain);
+ }
+
+
+
+
+
+ Construct a new instance of the SoundTriggerEventArgs class
+
+ Simulator where the event originated
+ The sound asset id
+ The ID of the owner
+ The ID of the object
+ The ID of the objects parent
+ The volume level
+ The regionhandle
+ The source position
+
+
+ Simulator where the event originated
+
+
+ Get the sound asset id
+
+
+ Get the ID of the owner
+
+
+ Get the ID of the Object
+
+
+ Get the ID of the objects parent
+
+
+ Get the volume level
+
+
+ Get the regionhandle
+
+
+ Get the source position
+
+
+ Provides data for the event
+ The event occurs when the simulator sends
+ the appearance data for an avatar
+
+ The following code example uses the and
+ properties to display the selected shape of an avatar on the window.
+
+ // subscribe to the event
+ Client.Avatars.AvatarAppearance += Avatars_AvatarAppearance;
+
+ // handle the data when the event is raised
+ void Avatars_AvatarAppearance(object sender, AvatarAppearanceEventArgs e)
+ {
+ Console.WriteLine("The Agent {0} is using a {1} shape.", e.AvatarID, (e.VisualParams[31] > 0) : "male" ? "female")
+ }
+
+
+
+
+
+ Construct a new instance of the PreloadSoundEventArgs class
+
+ Simulator where the event originated
+ The sound asset id
+ The ID of the owner
+ The ID of the object
+
+
+ Simulator where the event originated
+
+
+ Get the sound asset id
+
+
+ Get the ID of the owner
+
+
+ Get the ID of the Object
+
+
+
+ Avatar profile flags
+
+
+
+
+ Represents an avatar (other than your own)
+
+
+
+
+ Particle system specific enumerators, flags and methods.
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Current version of the media data for the prim
+
+
+
+
+ Array of media entries indexed by face number
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Foliage type for this primitive. Only applicable if this
+ primitive is foliage
+
+
+ Unknown
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Identifies the owner if audio or a particle system is
+ active
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Default constructor
+
+
+
+
+ Packs PathTwist, PathTwistBegin, PathRadiusOffset, and PathSkew
+ parameters in to signed eight bit values
+
+ Floating point parameter to pack
+ Signed eight bit value containing the packed parameter
+
+
+
+ Unpacks PathTwist, PathTwistBegin, PathRadiusOffset, and PathSkew
+ parameters from signed eight bit integers to floating point values
+
+ Signed eight bit value to unpack
+ Unpacked floating point value
+
+
+ Uses basic heuristics to estimate the primitive shape
+
+
+
+ Texture animation mode
+
+
+
+ Disable texture animation
+
+
+ Enable texture animation
+
+
+ Loop when animating textures
+
+
+ Animate in reverse direction
+
+
+ Animate forward then reverse
+
+
+ Slide texture smoothly instead of frame-stepping
+
+
+ Rotate texture instead of using frames
+
+
+ Scale texture instead of using frames
+
+
+
+ A single textured face. Don't instantiate this class yourself, use the
+ methods in TextureEntry
+
+
+
+
+ Contains the definition for individual faces
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ In the future this will specify whether a webpage is
+ attached to this face
+
+
+
+
+
+
+ Represents all of the texturable faces for an object
+
+ Grid objects have infinite faces, with each face
+ using the properties of the default face unless set otherwise. So if
+ you have a TextureEntry with a default texture uuid of X, and face 18
+ has a texture UUID of Y, every face would be textured with X except for
+ face 18 that uses Y. In practice however, primitives utilize a maximum
+ of nine faces
+
+
+
+
+
+
+
+
+
+ Constructor that takes a default texture UUID
+
+ Texture UUID to use as the default texture
+
+
+
+ Constructor that takes a TextureEntryFace
for the
+ default face
+
+ Face to use as the default face
+
+
+
+ Constructor that creates the TextureEntry class from a byte array
+
+ Byte array containing the TextureEntry field
+ Starting position of the TextureEntry field in
+ the byte array
+ Length of the TextureEntry field, in bytes
+
+
+
+ This will either create a new face if a custom face for the given
+ index is not defined, or return the custom face for that index if
+ it already exists
+
+ The index number of the face to create or
+ retrieve
+ A TextureEntryFace containing all the properties for that
+ face
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Controls the texture animation of a particular prim
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Complete structure for the particle system
+
+
+
+ Particle Flags
+ There appears to be more data packed in to this area
+ for many particle systems. It doesn't appear to be flag values
+ and serialization breaks unless there is a flag for every
+ possible bit so it is left as an unsigned integer
+
+
+ pattern of particles
+
+
+ A representing the maximimum age (in seconds) particle will be displayed
+ Maximum value is 30 seconds
+
+
+ A representing the number of seconds,
+ from when the particle source comes into view,
+ or the particle system's creation, that the object will emits particles;
+ after this time period no more particles are emitted
+
+
+ A in radians that specifies where particles will not be created
+
+
+ A in radians that specifies where particles will be created
+
+
+ A representing the number of seconds between burts.
+
+
+ A representing the number of meters
+ around the center of the source where particles will be created.
+
+
+ A representing in seconds, the minimum speed between bursts of new particles
+ being emitted
+
+
+ A representing in seconds the maximum speed of new particles being emitted.
+
+
+ A representing the maximum number of particles emitted per burst
+
+
+ A which represents the velocity (speed) from the source which particles are emitted
+
+
+ A which represents the Acceleration from the source which particles are emitted
+
+
+ The Key of the texture displayed on the particle
+
+
+ The Key of the specified target object or avatar particles will follow
+
+
+ Flags of particle from
+
+
+ Max Age particle system will emit particles for
+
+
+ The the particle has at the beginning of its lifecycle
+
+
+ The the particle has at the ending of its lifecycle
+
+
+ A that represents the starting X size of the particle
+ Minimum value is 0, maximum value is 4
+
+
+ A that represents the starting Y size of the particle
+ Minimum value is 0, maximum value is 4
+
+
+ A that represents the ending X size of the particle
+ Minimum value is 0, maximum value is 4
+
+
+ A that represents the ending Y size of the particle
+ Minimum value is 0, maximum value is 4
+
+
+
+ Decodes a byte[] array into a ParticleSystem Object
+
+ ParticleSystem object
+ Start position for BitPacker
+
+
+
+ Generate byte[] array from particle data
+
+ Byte array
+
+
+
+ Particle source pattern
+
+
+
+ None
+
+
+ Drop particles from source position with no force
+
+
+ "Explode" particles in all directions
+
+
+ Particles shoot across a 2D area
+
+
+ Particles shoot across a 3D Cone
+
+
+ Inverse of AngleCone (shoot particles everywhere except the 3D cone defined
+
+
+
+ Particle Data Flags
+
+
+
+ None
+
+
+ Interpolate color and alpha from start to end
+
+
+ Interpolate scale from start to end
+
+
+ Bounce particles off particle sources Z height
+
+
+ velocity of particles is dampened toward the simulators wind
+
+
+ Particles follow the source
+
+
+ Particles point towards the direction of source's velocity
+
+
+ Target of the particles
+
+
+ Particles are sent in a straight line
+
+
+ Particles emit a glow
+
+
+ used for point/grab/touch
+
+
+
+ Particle Flags Enum
+
+
+
+ None
+
+
+ Acceleration and velocity for particles are
+ relative to the object rotation
+
+
+ Particles use new 'correct' angle parameters
+
+
+
+ Parameters used to construct a visual representation of a primitive
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Attachment point to an avatar
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Information on the flexible properties of a primitive
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Default constructor
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Information on the light properties of a primitive
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Default constructor
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Information on the sculpt properties of a sculpted primitive
+
+
+
+
+ Default constructor
+
+
+
+
+
+
+
+
+
+
+
+ Render inside out (inverts the normals).
+
+
+
+
+ Render an X axis mirror of the sculpty.
+
+
+
+
+ Extended properties to describe an object
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Default constructor
+
+
+
+
+ Set the properties that are set in an ObjectPropertiesFamily packet
+
+ that has
+ been partially filled by an ObjectPropertiesFamily packet
+
+
+ Groups that this avatar is a member of
+
+
+ Positive and negative ratings
+
+
+ Avatar properties including about text, profile URL, image IDs and
+ publishing settings
+
+
+ Avatar interests including spoken languages, skills, and "want to"
+ choices
+
+
+ Movement control flags for avatars. Typically not set or used by
+ clients. To move your avatar, use Client.Self.Movement instead
+
+
+
+ Contains the visual parameters describing the deformation of the avatar
+
+
+
+
+ Default constructor
+
+
+
+ First name
+
+
+ Last name
+
+
+ Full name
+
+
+ Active group
+
+
+
+ Positive and negative ratings
+
+
+
+ Positive ratings for Behavior
+
+
+ Negative ratings for Behavior
+
+
+ Positive ratings for Appearance
+
+
+ Negative ratings for Appearance
+
+
+ Positive ratings for Building
+
+
+ Negative ratings for Building
+
+
+ Positive ratings given by this avatar
+
+
+ Negative ratings given by this avatar
+
+
+
+ Avatar properties including about text, profile URL, image IDs and
+ publishing settings
+
+
+
+ First Life about text
+
+
+ First Life image ID
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Profile image ID
+
+
+ Flags of the profile
+
+
+ Web URL for this profile
+
+
+ Should this profile be published on the web
+
+
+ Avatar Online Status
+
+
+ Is this a mature profile
+
+
+
+
+
+
+
+
+
+ Avatar interests including spoken languages, skills, and "want to"
+ choices
+
+
+
+ Languages profile field
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Manager class for our own avatar
+
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the ChatFromSimulator event
+ A ChatEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the ScriptDialog event
+ A SctriptDialogEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the ScriptQuestion event
+ A ScriptQuestionEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the LoadURL event
+ A LoadUrlEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the MoneyBalance event
+ A BalanceEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the MoneyBalanceReply event
+ A MoneyBalanceReplyEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the IM event
+ A InstantMessageEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the TeleportProgress event
+ A TeleportEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the AgentDataReply event
+ A AgentDataReplyEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the AnimationsChanged event
+ A AnimationsChangedEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the MeanCollision event
+ A MeanCollisionEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the RegionCrossed event
+ A RegionCrossedEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the GroupChatJoined event
+ A GroupChatJoinedEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the AlertMessage event
+ A AlertMessageEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the ScriptControlChange event
+ A ScriptControlEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the CameraConstraint event
+ A CameraConstraintEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the ScriptSensorReply event
+ A ScriptSensorReplyEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the AvatarSitResponse event
+ A AvatarSitResponseEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the ChatSessionMemberAdded event
+ A ChatSessionMemberAddedEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the ChatSessionMemberLeft event
+ A ChatSessionMemberLeftEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ Reference to the GridClient instance
+
+
+ Used for movement and camera tracking
+
+
+ Currently playing animations for the agent. Can be used to
+ check the current movement status such as walking, hovering, aiming,
+ etc. by checking against system animations found in the Animations class
+
+
+ Dictionary containing current Group Chat sessions and members
+
+
+
+ Constructor, setup callbacks for packets related to our avatar
+
+ A reference to the Class
+
+
+
+ Send a text message from the Agent to the Simulator
+
+ A containing the message
+ The channel to send the message on, 0 is the public channel. Channels above 0
+ can be used however only scripts listening on the specified channel will see the message
+ Denotes the type of message being sent, shout, whisper, etc.
+
+
+
+ Request any instant messages sent while the client was offline to be resent.
+
+
+
+
+ Send an Instant Message to another Avatar
+
+ The recipients
+ A containing the message to send
+
+
+
+ Send an Instant Message to an existing group chat or conference chat
+
+ The recipients
+ A containing the message to send
+ IM session ID (to differentiate between IM windows)
+
+
+
+ Send an Instant Message
+
+ The name this IM will show up as being from
+ Key of Avatar
+ Text message being sent
+ IM session ID (to differentiate between IM windows)
+ IDs of sessions for a conference
+
+
+
+ Send an Instant Message
+
+ The name this IM will show up as being from
+ Key of Avatar
+ Text message being sent
+ IM session ID (to differentiate between IM windows)
+ Type of instant message to send
+ Whether to IM offline avatars as well
+ Senders Position
+ RegionID Sender is In
+ Packed binary data that is specific to
+ the dialog type
+
+
+
+ Send an Instant Message to a group
+
+ of the group to send message to
+ Text Message being sent.
+
+
+
+ Send an Instant Message to a group the agent is a member of
+
+ The name this IM will show up as being from
+ of the group to send message to
+ Text message being sent
+
+
+
+ Send a request to join a group chat session
+
+ of Group to leave
+
+
+
+ Exit a group chat session. This will stop further Group chat messages
+ from being sent until session is rejoined.
+
+ of Group chat session to leave
+
+
+
+ Reply to script dialog questions.
+
+ Channel initial request came on
+ Index of button you're "clicking"
+ Label of button you're "clicking"
+ of Object that sent the dialog request
+
+
+
+
+ Accept invite for to a chatterbox session
+
+ of session to accept invite to
+
+
+
+ Start a friends conference
+
+ List of UUIDs to start a conference with
+ the temportary session ID returned in the callback>
+
+
+
+ Start a particle stream between an agent and an object
+
+ Key of the source agent
+ Key of the target object
+
+ The type from the enum
+ A unique for this effect
+
+
+
+ Start a particle stream between an agent and an object
+
+ Key of the source agent
+ Key of the target object
+ A representing the beams offset from the source
+ A which sets the avatars lookat animation
+ of the Effect
+
+
+
+ Create a particle beam between an avatar and an primitive
+
+ The ID of source avatar
+ The ID of the target primitive
+ global offset
+ A object containing the combined red, green, blue and alpha
+ color values of particle beam
+ a float representing the duration the parcicle beam will last
+ A Unique ID for the beam
+
+
+
+
+ Create a particle swirl around a target position using a packet
+
+ global offset
+ A object containing the combined red, green, blue and alpha
+ color values of particle beam
+ a float representing the duration the parcicle beam will last
+ A Unique ID for the beam
+
+
+
+ Sends a request to sit on the specified object
+
+ of the object to sit on
+ Sit at offset
+
+
+
+ Follows a call to to actually sit on the object
+
+
+
+ Stands up from sitting on a prim or the ground
+ true of AgentUpdate was sent
+
+
+
+ Does a "ground sit" at the avatar's current position
+
+
+
+
+ Starts or stops flying
+
+ True to start flying, false to stop flying
+
+
+
+ Starts or stops crouching
+
+ True to start crouching, false to stop crouching
+
+
+
+ Starts a jump (begin holding the jump key)
+
+
+
+
+ Use the autopilot sim function to move the avatar to a new
+ position. Uses double precision to get precise movements
+
+ The z value is currently not handled properly by the simulator
+ Global X coordinate to move to
+ Global Y coordinate to move to
+ Z coordinate to move to
+
+
+
+ Use the autopilot sim function to move the avatar to a new position
+
+ The z value is currently not handled properly by the simulator
+ Integer value for the global X coordinate to move to
+ Integer value for the global Y coordinate to move to
+ Floating-point value for the Z coordinate to move to
+
+
+
+ Use the autopilot sim function to move the avatar to a new position
+
+ The z value is currently not handled properly by the simulator
+ Integer value for the local X coordinate to move to
+ Integer value for the local Y coordinate to move to
+ Floating-point value for the Z coordinate to move to
+
+
+ Macro to cancel autopilot sim function
+ Not certain if this is how it is really done
+ true if control flags were set and AgentUpdate was sent to the simulator
+
+
+
+ Grabs an object
+
+ an unsigned integer of the objects ID within the simulator
+
+
+
+
+ Overload: Grab a simulated object
+
+ an unsigned integer of the objects ID within the simulator
+
+ The texture coordinates to grab
+ The surface coordinates to grab
+ The face of the position to grab
+ The region coordinates of the position to grab
+ The surface normal of the position to grab (A normal is a vector perpindicular to the surface)
+ The surface binormal of the position to grab (A binormal is a vector tangen to the surface
+ pointing along the U direction of the tangent space
+
+
+
+ Drag an object
+
+ of the object to drag
+ Drag target in region coordinates
+
+
+
+ Overload: Drag an object
+
+ of the object to drag
+ Drag target in region coordinates
+
+ The texture coordinates to grab
+ The surface coordinates to grab
+ The face of the position to grab
+ The region coordinates of the position to grab
+ The surface normal of the position to grab (A normal is a vector perpindicular to the surface)
+ The surface binormal of the position to grab (A binormal is a vector tangen to the surface
+ pointing along the U direction of the tangent space
+
+
+
+ Release a grabbed object
+
+ The Objects Simulator Local ID
+
+
+
+
+
+
+ Release a grabbed object
+
+ The Objects Simulator Local ID
+ The texture coordinates to grab
+ The surface coordinates to grab
+ The face of the position to grab
+ The region coordinates of the position to grab
+ The surface normal of the position to grab (A normal is a vector perpindicular to the surface)
+ The surface binormal of the position to grab (A binormal is a vector tangen to the surface
+ pointing along the U direction of the tangent space
+
+
+
+ Touches an object
+
+ an unsigned integer of the objects ID within the simulator
+
+
+
+
+ Request the current L$ balance
+
+
+
+
+ Give Money to destination Avatar
+
+ UUID of the Target Avatar
+ Amount in L$
+
+
+
+ Give Money to destination Avatar
+
+ UUID of the Target Avatar
+ Amount in L$
+ Description that will show up in the
+ recipients transaction history
+
+
+
+ Give L$ to an object
+
+ object to give money to
+ amount of L$ to give
+ name of object
+
+
+
+ Give L$ to a group
+
+ group to give money to
+ amount of L$ to give
+
+
+
+ Give L$ to a group
+
+ group to give money to
+ amount of L$ to give
+ description of transaction
+
+
+
+ Pay texture/animation upload fee
+
+
+
+
+ Pay texture/animation upload fee
+
+ description of the transaction
+
+
+
+ Give Money to destination Object or Avatar
+
+ UUID of the Target Object/Avatar
+ Amount in L$
+ Reason (Optional normally)
+ The type of transaction
+ Transaction flags, mostly for identifying group
+ transactions
+
+
+
+ Plays a gesture
+
+ Asset of the gesture
+
+
+
+ Mark gesture active
+
+ Inventory of the gesture
+ Asset of the gesture
+
+
+
+ Mark gesture inactive
+
+ Inventory of the gesture
+
+
+
+ Send an AgentAnimation packet that toggles a single animation on
+
+ The of the animation to start playing
+ Whether to ensure delivery of this packet or not
+
+
+
+ Send an AgentAnimation packet that toggles a single animation off
+
+ The of a
+ currently playing animation to stop playing
+ Whether to ensure delivery of this packet or not
+
+
+
+ Send an AgentAnimation packet that will toggle animations on or off
+
+ A list of animation s, and whether to
+ turn that animation on or off
+ Whether to ensure delivery of this packet or not
+
+
+
+ Teleports agent to their stored home location
+
+ true on successful teleport to home location
+
+
+
+ Teleport agent to a landmark
+
+ of the landmark to teleport agent to
+ true on success, false on failure
+
+
+
+ Attempt to look up a simulator name and teleport to the discovered
+ destination
+
+ Region name to look up
+ Position to teleport to
+ True if the lookup and teleport were successful, otherwise
+ false
+
+
+
+ Attempt to look up a simulator name and teleport to the discovered
+ destination
+
+ Region name to look up
+ Position to teleport to
+ Target to look at
+ True if the lookup and teleport were successful, otherwise
+ false
+
+
+
+ Teleport agent to another region
+
+ handle of region to teleport agent to
+ position in destination sim to teleport to
+ true on success, false on failure
+ This call is blocking
+
+
+
+ Teleport agent to another region
+
+ handle of region to teleport agent to
+ position in destination sim to teleport to
+ direction in destination sim agent will look at
+ true on success, false on failure
+ This call is blocking
+
+
+
+ Request teleport to a another simulator
+
+ handle of region to teleport agent to
+ position in destination sim to teleport to
+
+
+
+ Request teleport to a another simulator
+
+ handle of region to teleport agent to
+ position in destination sim to teleport to
+ direction in destination sim agent will look at
+
+
+
+ Teleport agent to a landmark
+
+ of the landmark to teleport agent to
+
+
+
+ Send a teleport lure to another avatar with default "Join me in ..." invitation message
+
+ target avatars to lure
+
+
+
+ Send a teleport lure to another avatar with custom invitation message
+
+ target avatars to lure
+ custom message to send with invitation
+
+
+
+ Respond to a teleport lure by either accepting it and initiating
+ the teleport, or denying it
+
+ of the avatar sending the lure
+ true to accept the lure, false to decline it
+
+
+
+ Update agent profile
+
+ struct containing updated
+ profile information
+
+
+
+ Update agents profile interests
+
+ selection of interests from struct
+
+
+
+ Set the height and the width of the client window. This is used
+ by the server to build a virtual camera frustum for our avatar
+
+ New height of the viewer window
+ New width of the viewer window
+
+
+
+ Request the list of muted objects and avatars for this agent
+
+
+
+
+ Sets home location to agents current position
+
+ will fire an AlertMessage () with
+ success or failure message
+
+
+
+ Move an agent in to a simulator. This packet is the last packet
+ needed to complete the transition in to a new simulator
+
+ Object
+
+
+
+ Reply to script permissions request
+
+ Object
+ of the itemID requesting permissions
+ of the taskID requesting permissions
+ list of permissions to allow
+
+
+
+ Respond to a group invitation by either accepting or denying it
+
+ UUID of the group (sent in the AgentID field of the invite message)
+ IM Session ID from the group invitation message
+ Accept the group invitation or deny it
+
+
+
+ Requests script detection of objects and avatars
+
+ name of the object/avatar to search for
+ UUID of the object or avatar to search for
+ Type of search from ScriptSensorTypeFlags
+ range of scan (96 max?)
+ the arc in radians to search within
+ an user generated ID to correlate replies with
+ Simulator to perform search in
+
+
+
+ Create or update profile pick
+
+ UUID of the pick to update, or random UUID to create a new pick
+ Is this a top pick? (typically false)
+ UUID of the parcel (UUID.Zero for the current parcel)
+ Name of the pick
+ Global position of the pick landmark
+ UUID of the image displayed with the pick
+ Long description of the pick
+
+
+
+ Delete profile pick
+
+ UUID of the pick to delete
+
+
+
+ Create or update profile Classified
+
+ UUID of the classified to update, or random UUID to create a new classified
+ Defines what catagory the classified is in
+ UUID of the image displayed with the classified
+ Price that the classified will cost to place for a week
+ Global position of the classified landmark
+ Name of the classified
+ Long description of the classified
+ if true, auto renew classified after expiration
+
+
+
+ Create or update profile Classified
+
+ UUID of the classified to update, or random UUID to create a new classified
+ Defines what catagory the classified is in
+ UUID of the image displayed with the classified
+ Price that the classified will cost to place for a week
+ Name of the classified
+ Long description of the classified
+ if true, auto renew classified after expiration
+
+
+
+ Delete a classified ad
+
+ The classified ads ID
+
+
+
+ Fetches resource usage by agents attachmetns
+
+ Called when the requested information is collected
+
+
+
+ Take an incoming ImprovedInstantMessage packet, auto-parse, and if
+ OnInstantMessage is defined call that with the appropriate arguments
+
+ The sender
+ The EventArgs object containing the packet data
+
+
+
+ Take an incoming Chat packet, auto-parse, and if OnChat is defined call
+ that with the appropriate arguments.
+
+ The sender
+ The EventArgs object containing the packet data
+
+
+
+ Used for parsing llDialogs
+
+ The sender
+ The EventArgs object containing the packet data
+
+
+
+ Used for parsing llRequestPermissions dialogs
+
+ The sender
+ The EventArgs object containing the packet data
+
+
+
+ Handles Script Control changes when Script with permissions releases or takes a control
+
+ The sender
+ The EventArgs object containing the packet data
+
+
+
+ Used for parsing llLoadURL Dialogs
+
+ The sender
+ The EventArgs object containing the packet data
+
+
+
+ Update client's Position, LookAt and region handle from incoming packet
+
+ The sender
+ The EventArgs object containing the packet data
+ This occurs when after an avatar moves into a new sim
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+
+ Process TeleportFailed message sent via EventQueue, informs agent its last teleport has failed and why.
+
+ The Message Key
+ An IMessage object Deserialized from the recieved message event
+ The simulator originating the event message
+
+
+
+ Process TeleportFinish from Event Queue and pass it onto our TeleportHandler
+
+ The message system key for this event
+ IMessage object containing decoded data from OSD
+ The simulator originating the event message
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+
+ Crossed region handler for message that comes across the EventQueue. Sent to an agent
+ when the agent crosses a sim border into a new region.
+
+ The message key
+ the IMessage object containing the deserialized data sent from the simulator
+ The which originated the packet
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+ This packet is now being sent via the EventQueue
+
+
+
+ Group Chat event handler
+
+ The capability Key
+ IMessage object containing decoded data from OSD
+
+
+
+
+ Response from request to join a group chat
+
+
+ IMessage object containing decoded data from OSD
+
+
+
+
+ Someone joined or left group chat
+
+
+ IMessage object containing decoded data from OSD
+
+
+
+
+ Handle a group chat Invitation
+
+ Caps Key
+ IMessage object containing decoded data from OSD
+ Originating Simulator
+
+
+
+ Moderate a chat session
+
+ the of the session to moderate, for group chats this will be the groups UUID
+ the of the avatar to moderate
+ Either "voice" to moderate users voice, or "text" to moderate users text session
+ true to moderate (silence user), false to allow avatar to speak
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Raised when a scripted object or agent within range sends a public message
+
+
+ Raised when a scripted object sends a dialog box containing possible
+ options an agent can respond to
+
+
+ Raised when an object requests a change in the permissions an agent has permitted
+
+
+ Raised when a script requests an agent open the specified URL
+
+
+ Raised when an agents currency balance is updated
+
+
+ Raised when a transaction occurs involving currency such as a land purchase
+
+
+ Raised when an ImprovedInstantMessage packet is recieved from the simulator, this is used for everything from
+ private messaging to friendship offers. The Dialog field defines what type of message has arrived
+
+
+ Raised when an agent has requested a teleport to another location, or when responding to a lure. Raised multiple times
+ for each teleport indicating the progress of the request
+
+
+ Raised when a simulator sends agent specific information for our avatar.
+
+
+ Raised when our agents animation playlist changes
+
+
+ Raised when an object or avatar forcefully collides with our agent
+
+
+ Raised when our agent crosses a region border into another region
+
+
+ Raised when our agent succeeds or fails to join a group chat session
+
+
+ Raised when a simulator sends an urgent message usually indication the recent failure of
+ another action we have attempted to take such as an attempt to enter a parcel where we are denied access
+
+
+ Raised when a script attempts to take or release specified controls for our agent
+
+
+ Raised when the simulator detects our agent is trying to view something
+ beyond its limits
+
+
+ Raised when a script sensor reply is received from a simulator
+
+
+ Raised in response to a request
+
+
+ Raised when an avatar enters a group chat session we are participating in
+
+
+ Raised when an agent exits a group chat session we are participating in
+
+
+ Your (client) avatars
+ "client", "agent", and "avatar" all represent the same thing
+
+
+ Temporary assigned to this session, used for
+ verifying our identity in packets
+
+
+ Shared secret that is never sent over the wire
+
+
+ Your (client) avatar ID, local to the current region/sim
+
+
+ Where the avatar started at login. Can be "last", "home"
+ or a login
+
+
+ The access level of this agent, usually M or PG
+
+
+ The CollisionPlane of Agent
+
+
+ An representing the velocity of our agent
+
+
+ An representing the acceleration of our agent
+
+
+ A which specifies the angular speed, and axis about which an Avatar is rotating.
+
+
+ Position avatar client will goto when login to 'home' or during
+ teleport request to 'home' region.
+
+
+ LookAt point saved/restored with HomePosition
+
+
+ Avatar First Name (i.e. Philip)
+
+
+ Avatar Last Name (i.e. Linden)
+
+
+ Avatar Full Name (i.e. Philip Linden)
+
+
+ Gets the health of the agent
+
+
+ Gets the current balance of the agent
+
+
+ Gets the local ID of the prim the agent is sitting on,
+ zero if the avatar is not currently sitting
+
+
+ Gets the of the agents active group.
+
+
+ Gets the Agents powers in the currently active group
+
+
+ Current status message for teleporting
+
+
+ Current position of the agent as a relative offset from
+ the simulator, or the parent object if we are sitting on something
+
+
+ Current rotation of the agent as a relative rotation from
+ the simulator, or the parent object if we are sitting on something
+
+
+ Current position of the agent in the simulator
+
+
+
+ A representing the agents current rotation
+
+
+
+ Returns the global grid position of the avatar
+
+
+
+ Used to specify movement actions for your agent
+
+
+
+ Empty flag
+
+
+ Move Forward (SL Keybinding: W/Up Arrow)
+
+
+ Move Backward (SL Keybinding: S/Down Arrow)
+
+
+ Move Left (SL Keybinding: Shift-(A/Left Arrow))
+
+
+ Move Right (SL Keybinding: Shift-(D/Right Arrow))
+
+
+ Not Flying: Jump/Flying: Move Up (SL Keybinding: E)
+
+
+ Not Flying: Croutch/Flying: Move Down (SL Keybinding: C)
+
+
+ Unused
+
+
+ Unused
+
+
+ Unused
+
+
+ Unused
+
+
+ ORed with AGENT_CONTROL_AT_* if the keyboard is being used
+
+
+ ORed with AGENT_CONTROL_LEFT_* if the keyboard is being used
+
+
+ ORed with AGENT_CONTROL_UP_* if the keyboard is being used
+
+
+ Fly
+
+
+
+
+
+ Finish our current animation
+
+
+ Stand up from the ground or a prim seat
+
+
+ Sit on the ground at our current location
+
+
+ Whether mouselook is currently enabled
+
+
+ Legacy, used if a key was pressed for less than a certain amount of time
+
+
+ Legacy, used if a key was pressed for less than a certain amount of time
+
+
+ Legacy, used if a key was pressed for less than a certain amount of time
+
+
+ Legacy, used if a key was pressed for less than a certain amount of time
+
+
+ Legacy, used if a key was pressed for less than a certain amount of time
+
+
+ Legacy, used if a key was pressed for less than a certain amount of time
+
+
+
+
+
+
+
+
+ Set when the avatar is idled or set to away. Note that the away animation is
+ activated separately from setting this flag
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Agent movement and camera control
+
+ Agent movement is controlled by setting specific
+ After the control flags are set, An AgentUpdate is required to update the simulator of the specified flags
+ This is most easily accomplished by setting one or more of the AgentMovement properties
+
+ Movement of an avatar is always based on a compass direction, for example AtPos will move the
+ agent from West to East or forward on the X Axis, AtNeg will of course move agent from
+ East to West or backward on the X Axis, LeftPos will be South to North or forward on the Y Axis
+ The Z axis is Up, finer grained control of movements can be done using the Nudge properties
+
+
+
+ Agent camera controls
+
+
+ Currently only used for hiding your group title
+
+
+ Action state of the avatar, which can currently be
+ typing and editing
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Timer for sending AgentUpdate packets
+
+
+ Default constructor
+
+
+
+ Send an AgentUpdate with the camera set at the current agent
+ position and pointing towards the heading specified
+
+ Camera rotation in radians
+ Whether to send the AgentUpdate reliable
+ or not
+
+
+
+ Rotates the avatar body and camera toward a target position.
+ This will also anchor the camera position on the avatar
+
+ Region coordinates to turn toward
+
+
+
+ Send new AgentUpdate packet to update our current camera
+ position and rotation
+
+
+
+
+ Send new AgentUpdate packet to update our current camera
+ position and rotation
+
+ Whether to require server acknowledgement
+ of this packet
+
+
+
+ Send new AgentUpdate packet to update our current camera
+ position and rotation
+
+ Whether to require server acknowledgement
+ of this packet
+ Simulator to send the update to
+
+
+
+ Builds an AgentUpdate packet entirely from parameters. This
+ will not touch the state of Self.Movement or
+ Self.Movement.Camera in any way
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Move agent positive along the X axis
+
+
+ Move agent negative along the X axis
+
+
+ Move agent positive along the Y axis
+
+
+ Move agent negative along the Y axis
+
+
+ Move agent positive along the Z axis
+
+
+ Move agent negative along the Z axis
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Causes simulator to make agent fly
+
+
+ Stop movement
+
+
+ Finish animation
+
+
+ Stand up from a sit
+
+
+ Tells simulator to sit agent on ground
+
+
+ Place agent into mouselook mode
+
+
+ Nudge agent positive along the X axis
+
+
+ Nudge agent negative along the X axis
+
+
+ Nudge agent positive along the Y axis
+
+
+ Nudge agent negative along the Y axis
+
+
+ Nudge agent positive along the Z axis
+
+
+ Nudge agent negative along the Z axis
+
+
+
+
+
+
+
+
+ Tell simulator to mark agent as away
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Returns "always run" value, or changes it by sending a SetAlwaysRunPacket
+
+
+
+ The current value of the agent control flags
+
+
+ Gets or sets the interval in milliseconds at which
+ AgentUpdate packets are sent to the current simulator. Setting
+ this to a non-zero value will also enable the packet sending if
+ it was previously off, and setting it to zero will disable
+
+
+ Gets or sets whether AgentUpdate packets are sent to
+ the current simulator
+
+
+ Reset movement controls every time we send an update
+
+
+
+ Camera controls for the agent, mostly a thin wrapper around
+ CoordinateFrame. This class is only responsible for state
+ tracking and math, it does not send any packets
+
+
+
+
+
+
+ The camera is a local frame of reference inside of
+ the larger grid space. This is where the math happens
+
+
+
+ Default constructor
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Called once attachment resource usage information has been collected
+
+ Indicates if operation was successfull
+ Attachment resource usage information
+
+
+
+ A linkset asset, containing a parent primitive and zero or more children
+
+
+
+ Initializes a new instance of an AssetPrim object
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Override the base classes AssetType
+
+
+
+ Only used internally for XML serialization/deserialization
+
+
+
+
+ The deserialized form of a single primitive in a linkset asset
+
+
+
+
+ Type of gesture step
+
+
+
+
+ Base class for gesture steps
+
+
+
+
+ Retururns what kind of gesture step this is
+
+
+
+
+ Describes animation step of a gesture
+
+
+
+
+ If true, this step represents start of animation, otherwise animation stop
+
+
+
+
+ Animation asset
+
+
+
+
+ Animation inventory name
+
+
+
+
+ Returns what kind of gesture step this is
+
+
+
+
+ Describes sound step of a gesture
+
+
+
+
+ Sound asset
+
+
+
+
+ Sound inventory name
+
+
+
+
+ Returns what kind of gesture step this is
+
+
+
+
+ Describes sound step of a gesture
+
+
+
+
+ Text to output in chat
+
+
+
+
+ Returns what kind of gesture step this is
+
+
+
+
+ Describes sound step of a gesture
+
+
+
+
+ If true in this step we wait for all animations to finish
+
+
+
+
+ If true gesture player should wait for the specified amount of time
+
+
+
+
+ Time in seconds to wait if WaitForAnimation is false
+
+
+
+
+ Returns what kind of gesture step this is
+
+
+
+
+ Describes the final step of a gesture
+
+
+
+
+ Returns what kind of gesture step this is
+
+
+
+
+ Represents a sequence of animations, sounds, and chat actions
+
+
+
+
+ Keyboard key that triggers the gestyre
+
+
+
+
+ Modifier to the trigger key
+
+
+
+
+ String that triggers playing of the gesture sequence
+
+
+
+
+ Text that replaces trigger in chat once gesture is triggered
+
+
+
+
+ Sequence of gesture steps
+
+
+
+
+ Constructs guesture asset
+
+
+
+
+ Constructs guesture asset
+
+ A unique specific to this asset
+ A byte array containing the raw asset data
+
+
+
+ Encodes gesture asset suitable for uplaod
+
+
+
+
+ Decodes gesture assset into play sequence
+
+ true if the asset data was decoded successfully
+
+
+
+ Returns asset type
+
+
+
+
+ Simulator (region) properties
+
+
+
+ No flags set
+
+
+ Agents can take damage and be killed
+
+
+ Landmarks can be created here
+
+
+ Home position can be set in this sim
+
+
+ Home position is reset when an agent teleports away
+
+
+ Sun does not move
+
+
+ No object, land, etc. taxes
+
+
+ Disable heightmap alterations (agents can still plant
+ foliage)
+
+
+ Land cannot be released, sold, or purchased
+
+
+ All content is wiped nightly
+
+
+ Unknown: Related to the availability of an overview world map tile.(Think mainland images when zoomed out.)
+
+
+ Unknown: Related to region debug flags. Possibly to skip processing of agent interaction with world.
+
+
+ Region does not update agent prim interest lists. Internal debugging option.
+
+
+ No collision detection for non-agent objects
+
+
+ No scripts are ran
+
+
+ All physics processing is turned off
+
+
+ Region can be seen from other regions on world map. (Legacy world map option?)
+
+
+ Region can be seen from mainland on world map. (Legacy world map option?)
+
+
+ Agents not explicitly on the access list can visit the region.
+
+
+ Traffic calculations are not run across entire region, overrides parcel settings.
+
+
+ Flight is disabled (not currently enforced by the sim)
+
+
+ Allow direct (p2p) teleporting
+
+
+ Estate owner has temporarily disabled scripting
+
+
+ Restricts the usage of the LSL llPushObject function, applies to whole region.
+
+
+ Deny agents with no payment info on file
+
+
+ Deny agents with payment info on file
+
+
+ Deny agents who have made a monetary transaction
+
+
+ Parcels within the region may be joined or divided by anyone, not just estate owners/managers.
+
+
+ Abuse reports sent from within this region are sent to the estate owner defined email.
+
+
+ Region is Voice Enabled
+
+
+ Removes the ability from parcel owners to set their parcels to show in search.
+
+
+ Deny agents who have not been age verified from entering the region.
+
+
+
+ Access level for a simulator
+
+
+
+ Minimum access level, no additional checks
+
+
+ Trial accounts allowed
+
+
+ PG rating
+
+
+ Mature rating
+
+
+ Adult rating
+
+
+ Simulator is offline
+
+
+ Simulator does not exist
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Initialize the UDP packet handler in server mode
+
+ Port to listening for incoming UDP packets on
+
+
+
+ Initialize the UDP packet handler in client mode
+
+ Remote UDP server to connect to
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ A public reference to the client that this Simulator object
+ is attached to
+
+
+ A Unique Cache identifier for this simulator
+
+
+ The capabilities for this simulator
+
+
+
+
+
+ The current version of software this simulator is running
+
+
+
+
+
+ A 64x64 grid of parcel coloring values. The values stored
+ in this array are of the type
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ true if your agent has Estate Manager rights on this region
+
+
+
+
+
+
+
+
+
+
+
+ Statistics information for this simulator and the
+ connection to the simulator, calculated by the simulator itself
+ and the library
+
+
+ The regions Unique ID
+
+
+ The physical data center the simulator is located
+ Known values are:
+
+ - Dallas
+ - Chandler
+ - SF
+
+
+
+
+ The CPU Class of the simulator
+ Most full mainland/estate sims appear to be 5,
+ Homesteads and Openspace appear to be 501
+
+
+ The number of regions sharing the same CPU as this one
+ "Full Sims" appear to be 1, Homesteads appear to be 4
+
+
+ The billing product name
+ Known values are:
+
+ - Mainland / Full Region (Sku: 023)
+ - Estate / Full Region (Sku: 024)
+ - Estate / Openspace (Sku: 027)
+ - Estate / Homestead (Sku: 029)
+ - Mainland / Homestead (Sku: 129) (Linden Owned)
+ - Mainland / Linden Homes (Sku: 131)
+
+
+
+
+ The billing product SKU
+ Known values are:
+
+ - 023 Mainland / Full Region
+ - 024 Estate / Full Region
+ - 027 Estate / Openspace
+ - 029 Estate / Homestead
+ - 129 Mainland / Homestead (Linden Owned)
+ - 131 Linden Homes / Full Region
+
+
+
+
+ The current sequence number for packets sent to this
+ simulator. Must be Interlocked before modifying. Only
+ useful for applications manipulating sequence numbers
+
+
+
+ A thread-safe dictionary containing avatars in a simulator
+
+
+
+
+ A thread-safe dictionary containing primitives in a simulator
+
+
+
+
+ Provides access to an internal thread-safe dictionary containing parcel
+ information found in this simulator
+
+
+
+
+ Checks simulator parcel map to make sure it has downloaded all data successfully
+
+ true if map is full (contains no 0's)
+
+
+ Used internally to track sim disconnections
+
+
+ Event that is triggered when the simulator successfully
+ establishes a connection
+
+
+ Whether this sim is currently connected or not. Hooked up
+ to the property Connected
+
+
+ Coarse locations of avatars in this simulator
+
+
+ AvatarPositions key representing TrackAgent target
+
+
+ Sequence numbers of packets we've received
+ (for duplicate checking)
+
+
+ Packets we sent out that need ACKs from the simulator
+
+
+ Sequence number for pause/resume
+
+
+ Indicates if UDP connection to the sim is fully established
+
+
+
+
+
+ Reference to the GridClient object
+ IPEndPoint of the simulator
+ handle of the simulator
+
+
+
+ Called when this Simulator object is being destroyed
+
+
+
+
+ Attempt to connect to this simulator
+
+ Whether to move our agent in to this sim or not
+ True if the connection succeeded or connection status is
+ unknown, false if there was a failure
+
+
+
+ Initiates connection to the simulator
+
+
+
+
+ Disconnect from this simulator
+
+
+
+
+ Instructs the simulator to stop sending update (and possibly other) packets
+
+
+
+
+ Instructs the simulator to resume sending update packets (unpause)
+
+
+
+
+ Retrieve the terrain height at a given coordinate
+
+ Sim X coordinate, valid range is from 0 to 255
+ Sim Y coordinate, valid range is from 0 to 255
+ The terrain height at the given point if the
+ lookup was successful, otherwise 0.0f
+ True if the lookup was successful, otherwise false
+
+
+
+ Sends a packet
+
+ Packet to be sent
+
+
+
+
+
+
+
+
+ Returns Simulator Name as a String
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Sends out pending acknowledgements
+
+
+
+
+ Resend unacknowledged packets
+
+
+
+
+ Provides access to an internal thread-safe multidimensional array containing a x,y grid mapped
+ to each 64x64 parcel's LocalID.
+
+
+
+ The IP address and port of the server
+
+
+ Whether there is a working connection to the simulator or
+ not
+
+
+ Coarse locations of avatars in this simulator
+
+
+ AvatarPositions key representing TrackAgent target
+
+
+ Indicates if UDP connection to the sim is fully established
+
+
+
+ Simulator Statistics
+
+
+
+ Total number of packets sent by this simulator to this agent
+
+
+ Total number of packets received by this simulator to this agent
+
+
+ Total number of bytes sent by this simulator to this agent
+
+
+ Total number of bytes received by this simulator to this agent
+
+
+ Time in seconds agent has been connected to simulator
+
+
+ Total number of packets that have been resent
+
+
+ Total number of resent packets recieved
+
+
+ Total number of pings sent to this simulator by this agent
+
+
+ Total number of ping replies sent to this agent by this simulator
+
+
+
+ Incoming bytes per second
+
+ It would be nice to have this claculated on the fly, but
+ this is far, far easier
+
+
+
+ Outgoing bytes per second
+
+ It would be nice to have this claculated on the fly, but
+ this is far, far easier
+
+
+ Time last ping was sent
+
+
+ ID of last Ping sent
+
+
+
+
+
+
+
+
+ Current time dilation of this simulator
+
+
+ Current Frames per second of simulator
+
+
+ Current Physics frames per second of simulator
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Total number of objects Simulator is simulating
+
+
+ Total number of Active (Scripted) objects running
+
+
+ Number of agents currently in this simulator
+
+
+ Number of agents in neighbor simulators
+
+
+ Number of Active scripts running in this simulator
+
+
+
+
+
+
+
+
+
+
+
+ Number of downloads pending
+
+
+ Number of uploads pending
+
+
+
+
+
+
+
+
+ Number of local uploads pending
+
+
+ Unacknowledged bytes in queue
+
+
+
+ Exception class to identify inventory exceptions
+
+
+
+
+ Responsible for maintaining inventory structure. Inventory constructs nodes
+ and manages node children as is necessary to maintain a coherant hirarchy.
+ Other classes should not manipulate or create InventoryNodes explicitly. When
+ A node's parent changes (when a folder is moved, for example) simply pass
+ Inventory the updated InventoryFolder and it will make the appropriate changes
+ to its internal representation.
+
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the InventoryObjectUpdated Event
+ A InventoryObjectUpdatedEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the InventoryObjectRemoved Event
+ A InventoryObjectRemovedEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the InventoryObjectAdded Event
+ A InventoryObjectAddedEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+
+ Returns the contents of the specified folder
+
+ A folder's UUID
+ The contents of the folder corresponding to folder
+ When folder
does not exist in the inventory
+
+
+
+ Updates the state of the InventoryNode and inventory data structure that
+ is responsible for the InventoryObject. If the item was previously not added to inventory,
+ it adds the item, and updates structure accordingly. If it was, it updates the
+ InventoryNode, changing the parent node if item.parentUUID
does
+ not match node.Parent.Data.UUID
.
+
+ You can not set the inventory root folder using this method
+
+ The InventoryObject to store
+
+
+
+ Removes the InventoryObject and all related node data from Inventory.
+
+ The InventoryObject to remove.
+
+
+
+ Used to find out if Inventory contains the InventoryObject
+ specified by uuid
.
+
+ The UUID to check.
+ true if inventory contains uuid, false otherwise
+
+
+
+ Saves the current inventory structure to a cache file
+
+ Name of the cache file to save to
+
+
+
+ Loads in inventory cache file into the inventory structure. Note only valid to call after login has been successful.
+
+ Name of the cache file to load
+ The number of inventory items sucessfully reconstructed into the inventory node tree
+
+
+ Raised when the simulator sends us data containing
+ ...
+
+
+ Raised when the simulator sends us data containing
+ ...
+
+
+ Raised when the simulator sends us data containing
+ ...
+
+
+
+ The root folder of this avatars inventory
+
+
+
+
+ The default shared library folder
+
+
+
+
+ The root node of the avatars inventory
+
+
+
+
+ The root node of the default shared library
+
+
+
+
+ By using the bracket operator on this class, the program can get the
+ InventoryObject designated by the specified uuid. If the value for the corresponding
+ UUID is null, the call is equivelant to a call to RemoveNodeFor(this[uuid])
.
+ If the value is non-null, it is equivelant to a call to UpdateNodeFor(value)
,
+ the uuid parameter is ignored.
+
+ The UUID of the InventoryObject to get or set, ignored if set to non-null value.
+ The InventoryObject corresponding to uuid
.
+
+
+
+ The type of bump-mapping applied to a face
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ The level of shininess applied to a face
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ The texture mapping style used for a face
+
+
+
+
+
+
+
+
+
+
+ Flags in the TextureEntry block that describe which properties are
+ set
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Image width
+
+
+
+
+ Image height
+
+
+
+
+ Image channel flags
+
+
+
+
+ Red channel data
+
+
+
+
+ Green channel data
+
+
+
+
+ Blue channel data
+
+
+
+
+ Alpha channel data
+
+
+
+
+ Bump channel data
+
+
+
+
+ Create a new blank image
+
+ width
+ height
+ channel flags
+
+
+
+
+
+
+
+
+
+ Convert the channels in the image. Channels are created or destroyed as required.
+
+ new channel flags
+
+
+
+ Resize or stretch the image using nearest neighbor (ugly) resampling
+
+ new width
+ new height
+
+
+
+ Create a byte array containing 32-bit RGBA data with a bottom-left
+ origin, suitable for feeding directly into OpenGL
+
+ A byte array containing raw texture data
+
+
+
+ Represents a Landmark with RegionID and Position vector
+
+
+
+ UUID of the Landmark target region
+
+
+ Local position of the target
+
+
+ Construct an Asset of type Landmark
+
+
+
+ Construct an Asset object of type Landmark
+
+ A unique specific to this asset
+ A byte array containing the raw asset data
+
+
+
+ Constuct an asset of type Landmark
+
+ UUID of the target region
+ Local position of landmark
+
+
+
+ Encode the raw contents of a string with the specific Landmark format
+
+
+
+
+ Decode the raw asset data, populating the RegionID and Position
+
+ true if the AssetData was successfully decoded to a UUID and Vector
+
+
+ Override the base classes AssetType
+
+
+
+ Represents an that can be worn on an avatar
+ such as a Shirt, Pants, etc.
+
+
+
+
+ Represents a Wearable Asset, Clothing, Hair, Skin, Etc
+
+
+
+ A string containing the name of the asset
+
+
+ A string containing a short description of the asset
+
+
+ The Assets WearableType
+
+
+ The For-Sale status of the object
+
+
+ An Integer representing the purchase price of the asset
+
+
+ The of the assets creator
+
+
+ The of the assets current owner
+
+
+ The of the assets prior owner
+
+
+ The of the Group this asset is set to
+
+
+ True if the asset is owned by a
+
+
+ The Permissions mask of the asset
+
+
+ A Dictionary containing Key/Value pairs of the objects parameters
+
+
+ A Dictionary containing Key/Value pairs where the Key is the textures Index and the Value is the Textures
+
+
+ Initializes a new instance of an AssetWearable object
+
+
+ Initializes a new instance of an AssetWearable object with parameters
+ A unique specific to this asset
+ A byte array containing the raw asset data
+
+
+ Initializes a new instance of an AssetWearable object with parameters
+ A string containing the asset parameters
+
+
+
+ Decode an assets byte encoded data to a string
+
+ true if the asset data was decoded successfully
+
+
+
+ Encode the assets string represantion into a format consumable by the asset server
+
+
+
+ Initializes a new instance of an AssetScriptBinary object
+
+
+ Initializes a new instance of an AssetScriptBinary object with parameters
+ A unique specific to this asset
+ A byte array containing the raw asset data
+
+
+ Initializes a new instance of an AssetScriptBinary object with parameters
+ A string containing the Clothings data
+
+
+ Override the base classes AssetType
+
+
+
+ pre-defined built in sounds
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ coins
+
+
+ cash register bell
+
+
+
+
+
+
+
+
+ rubber
+
+
+ plastic
+
+
+ flesh
+
+
+ wood splintering?
+
+
+ glass break
+
+
+ metal clunk
+
+
+ whoosh
+
+
+ shake
+
+
+
+
+
+ ding
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ A dictionary containing all pre-defined sounds
+
+ A dictionary containing the pre-defined sounds,
+ where the key is the sounds ID, and the value is a string
+ containing a name to identify the purpose of the sound
+
+
+
+
+
+
+
+ The avatar has no rights
+
+
+ The avatar can see the online status of the target avatar
+
+
+ The avatar can see the location of the target avatar on the map
+
+
+ The avatar can modify the ojects of the target avatar
+
+
+
+ This class holds information about an avatar in the friends list. There are two ways
+ to interface to this class. The first is through the set of boolean properties. This is the typical
+ way clients of this class will use it. The second interface is through two bitflag properties,
+ TheirFriendsRights and MyFriendsRights
+
+
+
+
+ Used internally when building the initial list of friends at login time
+
+ System ID of the avatar being prepesented
+ Rights the friend has to see you online and to modify your objects
+ Rights you have to see your friend online and to modify their objects
+
+
+
+ FriendInfo represented as a string
+
+ A string reprentation of both my rights and my friends rights
+
+
+
+ System ID of the avatar
+
+
+
+
+ full name of the avatar
+
+
+
+
+ True if the avatar is online
+
+
+
+
+ True if the friend can see if I am online
+
+
+
+
+ True if the friend can see me on the map
+
+
+
+
+ True if the freind can modify my objects
+
+
+
+
+ True if I can see if my friend is online
+
+
+
+
+ True if I can see if my friend is on the map
+
+
+
+
+ True if I can modify my friend's objects
+
+
+
+
+ My friend's rights represented as bitmapped flags
+
+
+
+
+ My rights represented as bitmapped flags
+
+
+
+
+ This class is used to add and remove avatars from your friends list and to manage their permission.
+
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the FriendOnline event
+ A FriendInfoEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the FriendOffline event
+ A FriendInfoEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the FriendRightsUpdate event
+ A FriendInfoEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the FriendNames event
+ A FriendNamesEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the FriendshipOffered event
+ A FriendshipOfferedEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the FriendshipResponse event
+ A FriendshipResponseEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the FriendshipTerminated event
+ A FriendshipTerminatedEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the FriendFoundReply event
+ A FriendFoundReplyEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+
+ A dictionary of key/value pairs containing known friends of this avatar.
+
+ The Key is the of the friend, the value is a
+ object that contains detailed information including permissions you have and have given to the friend
+
+
+
+
+ A Dictionary of key/value pairs containing current pending frienship offers.
+
+ The key is the of the avatar making the request,
+ the value is the of the request which is used to accept
+ or decline the friendship offer
+
+
+
+
+ Internal constructor
+
+ A reference to the GridClient Object
+
+
+
+ Accept a friendship request
+
+ agentID of avatatar to form friendship with
+ imSessionID of the friendship request message
+
+
+
+ Decline a friendship request
+
+ of friend
+ imSessionID of the friendship request message
+
+
+
+ Overload: Offer friendship to an avatar.
+
+ System ID of the avatar you are offering friendship to
+
+
+
+ Offer friendship to an avatar.
+
+ System ID of the avatar you are offering friendship to
+ A message to send with the request
+
+
+
+ Terminate a friendship with an avatar
+
+ System ID of the avatar you are terminating the friendship with
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+
+ Change the rights of a friend avatar.
+
+ the of the friend
+ the new rights to give the friend
+ This method will implicitly set the rights to those passed in the rights parameter.
+
+
+
+ Use to map a friends location on the grid.
+
+ Friends UUID to find
+
+
+
+
+ Use to track a friends movement on the grid
+
+ Friends Key
+
+
+
+ Ask for a notification of friend's online status
+
+ Friend's UUID
+
+
+
+ This handles the asynchronous response of a RequestAvatarNames call.
+
+
+ names cooresponding to the the list of IDs sent the the RequestAvatarNames call.
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+
+ Populate FriendList with data from the login reply
+
+ true if login was successful
+ true if login request is requiring a redirect
+ A string containing the response to the login request
+ A string containing the reason for the request
+ A object containing the decoded
+ reply from the login server
+
+
+ Raised when the simulator sends notification one of the members in our friends list comes online
+
+
+ Raised when the simulator sends notification one of the members in our friends list goes offline
+
+
+ Raised when the simulator sends notification one of the members in our friends list grants or revokes permissions
+
+
+ Raised when the simulator sends us the names on our friends list
+
+
+ Raised when the simulator sends notification another agent is offering us friendship
+
+
+ Raised when a request we sent to friend another agent is accepted or declined
+
+
+ Raised when the simulator sends notification one of the members in our friends list has terminated
+ our friendship
+
+
+ Raised when the simulator sends the location of a friend we have
+ requested map location info for
+
+
+ Contains information on a member of our friends list
+
+
+
+ Construct a new instance of the FriendInfoEventArgs class
+
+ The FriendInfo
+
+
+ Get the FriendInfo
+
+
+ Contains Friend Names
+
+
+
+ Construct a new instance of the FriendNamesEventArgs class
+
+ A dictionary where the Key is the ID of the Agent,
+ and the Value is a string containing their name
+
+
+ A dictionary where the Key is the ID of the Agent,
+ and the Value is a string containing their name
+
+
+ Sent when another agent requests a friendship with our agent
+
+
+
+ Construct a new instance of the FriendshipOfferedEventArgs class
+
+ The ID of the agent requesting friendship
+ The name of the agent requesting friendship
+ The ID of the session, used in accepting or declining the
+ friendship offer
+
+
+ Get the ID of the agent requesting friendship
+
+
+ Get the name of the agent requesting friendship
+
+
+ Get the ID of the session, used in accepting or declining the
+ friendship offer
+
+
+ A response containing the results of our request to form a friendship with another agent
+
+
+
+ Construct a new instance of the FriendShipResponseEventArgs class
+
+ The ID of the agent we requested a friendship with
+ The name of the agent we requested a friendship with
+ true if the agent accepted our friendship offer
+
+
+ Get the ID of the agent we requested a friendship with
+
+
+ Get the name of the agent we requested a friendship with
+
+
+ true if the agent accepted our friendship offer
+
+
+ Contains data sent when a friend terminates a friendship with us
+
+
+
+ Construct a new instance of the FrindshipTerminatedEventArgs class
+
+ The ID of the friend who terminated the friendship with us
+ The name of the friend who terminated the friendship with us
+
+
+ Get the ID of the agent that terminated the friendship with us
+
+
+ Get the name of the agent that terminated the friendship with us
+
+
+
+ Data sent in response to a request which contains the information to allow us to map the friends location
+
+
+
+
+ Construct a new instance of the FriendFoundReplyEventArgs class
+
+ The ID of the agent we have requested location information for
+ The region handle where our friend is located
+ The simulator local position our friend is located
+
+
+ Get the ID of the agent we have received location information for
+
+
+ Get the region handle where our mapped friend is located
+
+
+ Get the simulator local position where our friend is located
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Map layer request type
+
+
+
+ Objects and terrain are shown
+
+
+ Only the terrain is shown, no objects
+
+
+ Overlay showing land for sale and for auction
+
+
+
+ Type of grid item, such as telehub, event, populator location, etc.
+
+
+
+ Telehub
+
+
+ PG rated event
+
+
+ Mature rated event
+
+
+ Popular location
+
+
+ Locations of avatar groups in a region
+
+
+ Land for sale
+
+
+ Classified ad
+
+
+ Adult rated event
+
+
+ Adult land for sale
+
+
+
+ Information about a region on the grid map
+
+
+
+ Sim X position on World Map
+
+
+ Sim Y position on World Map
+
+
+ Sim Name (NOTE: In lowercase!)
+
+
+
+
+
+ Appears to always be zero (None)
+
+
+ Sim's defined Water Height
+
+
+
+
+
+ UUID of the World Map image
+
+
+ Unique identifier for this region, a combination of the X
+ and Y position
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Visual chunk of the grid map
+
+
+
+
+ Base class for Map Items
+
+
+
+ The Global X position of the item
+
+
+ The Global Y position of the item
+
+
+ Get the Local X position of the item
+
+
+ Get the Local Y position of the item
+
+
+ Get the Handle of the region
+
+
+
+ Represents an agent or group of agents location
+
+
+
+
+ Represents a Telehub location
+
+
+
+
+ Represents a non-adult parcel of land for sale
+
+
+
+
+ Represents an Adult parcel of land for sale
+
+
+
+
+ Represents a PG Event
+
+
+
+
+ Represents a Mature event
+
+
+
+
+ Represents an Adult event
+
+
+
+
+ Manages grid-wide tasks such as the world map
+
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the CoarseLocationUpdate event
+ A CoarseLocationUpdateEventArgs object containing the
+ data sent by simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the GridRegion event
+ A GridRegionEventArgs object containing the
+ data sent by simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the GridLayer event
+ A GridLayerEventArgs object containing the
+ data sent by simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the GridItems event
+ A GridItemEventArgs object containing the
+ data sent by simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the RegionHandleReply event
+ A RegionHandleReplyEventArgs object containing the
+ data sent by simulator
+
+
+ Thread sync lock object
+
+
+ A dictionary of all the regions, indexed by region name
+
+
+ A dictionary of all the regions, indexed by region handle
+
+
+
+ Constructor
+
+ Instance of GridClient object to associate with this GridManager instance
+
+
+
+
+
+
+
+
+
+ Request a map layer
+
+ The name of the region
+ The type of layer
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Request data for all mainland (Linden managed) simulators
+
+
+
+
+ Request the region handle for the specified region UUID
+
+ UUID of the region to look up
+
+
+
+ Get grid region information using the region name, this function
+ will block until it can find the region or gives up
+
+ Name of sim you're looking for
+ Layer that you are requesting
+ Will contain a GridRegion for the sim you're
+ looking for if successful, otherwise an empty structure
+ True if the GridRegion was successfully fetched, otherwise
+ false
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Raised when the simulator sends a
+ containing the location of agents in the simulator
+
+
+ Raised when the simulator sends a Region Data in response to
+ a Map request
+
+
+ Raised when the simulator sends GridLayer object containing
+ a map tile coordinates and texture information
+
+
+ Raised when the simulator sends GridItems object containing
+ details on events, land sales at a specific location
+
+
+ Raised in response to a Region lookup
+
+
+ Unknown
+
+
+ Current direction of the sun
+
+
+ Current angular velocity of the sun
+
+
+ Current world time
+
+
+
+ Permissions for control of object media
+
+
+
+
+ Style of cotrols that shold be displayed to the user
+
+
+
+
+ Class representing media data for a single face
+
+
+
+ Is display of the alternative image enabled
+
+
+ Should media auto loop
+
+
+ Shoule media be auto played
+
+
+ Auto scale media to prim face
+
+
+ Should viewer automatically zoom in on the face when clicked
+
+
+ Should viewer interpret first click as interaction with the media
+ or when false should the first click be treated as zoom in commadn
+
+
+ Style of controls viewer should display when
+ viewer media on this face
+
+
+ Starting URL for the media
+
+
+ Currently navigated URL
+
+
+ Media height in pixes
+
+
+ Media width in pixels
+
+
+ Who can controls the media
+
+
+ Who can interact with the media
+
+
+ Is URL whitelist enabled
+
+
+ Array of URLs that are whitelisted
+
+
+
+ Serialize to OSD
+
+ OSDMap with the serialized data
+
+
+
+ Deserialize from OSD data
+
+ Serialized OSD data
+ Deserialized object
+
+
+
+ Represents an AssetScriptBinary object containing the
+ LSO compiled bytecode of an LSL script
+
+
+
+ Initializes a new instance of an AssetScriptBinary object
+
+
+ Initializes a new instance of an AssetScriptBinary object with parameters
+ A unique specific to this asset
+ A byte array containing the raw asset data
+
+
+
+ TODO: Encodes a scripts contents into a LSO Bytecode file
+
+
+
+
+ TODO: Decode LSO Bytecode into a string
+
+ true
+
+
+ Override the base classes AssetType
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the LandPatchReceived event
+ A LandPatchReceivedEventArgs object containing the
+ data returned from the simulator
+
+
+ Thread sync lock object
+
+
+
+ Default constructor
+
+
+
+
+ Raised when the simulator responds sends
+
+
+ Simulator from that sent tha data
+
+
+ Sim coordinate of the patch
+
+
+ Sim coordinate of the patch
+
+
+ Size of tha patch
+
+
+ Heightmap for the patch
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Login Request Parameters
+
+
+
+ The URL of the Login Server
+
+
+ The number of milliseconds to wait before a login is considered
+ failed due to timeout
+
+
+ The request method
+ login_to_simulator is currently the only supported method
+
+
+ The Agents First name
+
+
+ The Agents Last name
+
+
+ A md5 hashed password
+ plaintext password will be automatically hashed
+
+
+ The agents starting location once logged in
+ Either "last", "home", or a string encoded URI
+ containing the simulator name and x/y/z coordinates e.g: uri:hooper&128&152&17
+
+
+ A string containing the client software channel information
+ Second Life Release
+
+
+ The client software version information
+ The official viewer uses: Second Life Release n.n.n.n
+ where n is replaced with the current version of the viewer
+
+
+ A string containing the platform information the agent is running on
+
+
+ A string hash of the network cards Mac Address
+
+
+ Unknown or deprecated
+
+
+ A string hash of the first disk drives ID used to identify this clients uniqueness
+
+
+ A string containing the viewers Software, this is not directly sent to the login server but
+ instead is used to generate the Version string
+
+
+ A string representing the software creator. This is not directly sent to the login server but
+ is used by the library to generate the Version information
+
+
+ If true, this agent agrees to the Terms of Service of the grid its connecting to
+
+
+ Unknown
+
+
+ An array of string sent to the login server to enable various options
+
+
+ A randomly generated ID to distinguish between login attempts. This value is only used
+ internally in the library and is never sent over the wire
+
+
+
+ Default constuctor, initializes sane default values
+
+
+
+
+ Instantiates new LoginParams object and fills in the values
+
+ Instance of GridClient to read settings from
+ Login first name
+ Login last name
+ Password
+ Login channnel (application name)
+ Client version, should be application name + version number
+
+
+
+ Instantiates new LoginParams object and fills in the values
+
+ Instance of GridClient to read settings from
+ Login first name
+ Login last name
+ Password
+ Login channnel (application name)
+ Client version, should be application name + version number
+ URI of the login server
+
+
+
+ The decoded data returned from the login server after a successful login
+
+
+
+ true, false, indeterminate
+
+
+ Login message of the day
+
+
+ M or PG, also agent_region_access and agent_access_max
+
+
+
+ Parse LLSD Login Reply Data
+
+ An
+ contaning the login response data
+ XML-RPC logins do not require this as XML-RPC.NET
+ automatically populates the struct properly using attributes
+
+
+
+ Login Routines
+
+
+ NetworkManager is responsible for managing the network layer of
+ OpenMetaverse. It tracks all the server connections, serializes
+ outgoing traffic and deserializes incoming traffic, and provides
+ instances of delegates for network-related events.
+
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the LoginProgress Event
+ A LoginProgressEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ Seed CAPS URL returned from the login server
+
+
+ A list of packets obtained during the login process which
+ networkmanager will log but not process
+
+
+
+ Generate sane default values for a login request
+
+ Account first name
+ Account last name
+ Account password
+ Client application name
+ Client application version
+ A populated struct containing
+ sane defaults
+
+
+
+ Simplified login that takes the most common and required fields
+
+ Account first name
+ Account last name
+ Account password
+ Client application name
+ Client application version
+ Whether the login was successful or not. On failure the
+ LoginErrorKey string will contain the error code and LoginMessage
+ will contain a description of the error
+
+
+
+ Simplified login that takes the most common fields along with a
+ starting location URI, and can accept an MD5 string instead of a
+ plaintext password
+
+ Account first name
+ Account last name
+ Account password or MD5 hash of the password
+ such as $1$1682a1e45e9f957dcdf0bb56eb43319c
+ Client application name
+ Starting location URI that can be built with
+ StartLocation()
+ Client application version
+ Whether the login was successful or not. On failure the
+ LoginErrorKey string will contain the error code and LoginMessage
+ will contain a description of the error
+
+
+
+ Login that takes a struct of all the values that will be passed to
+ the login server
+
+ The values that will be passed to the login
+ server, all fields must be set even if they are String.Empty
+ Whether the login was successful or not. On failure the
+ LoginErrorKey string will contain the error code and LoginMessage
+ will contain a description of the error
+
+
+
+ Build a start location URI for passing to the Login function
+
+ Name of the simulator to start in
+ X coordinate to start at
+ Y coordinate to start at
+ Z coordinate to start at
+ String with a URI that can be used to login to a specified
+ location
+
+
+
+ Handles response from XML-RPC login replies
+
+
+
+
+ Handle response from LLSD login replies
+
+
+
+
+
+
+
+ Get current OS
+
+ Either "Win" or "Linux"
+
+
+
+ Get clients default Mac Address
+
+ A string containing the first found Mac Address
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the PacketSent Event
+ A PacketSentEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the LoggedOut Event
+ A LoggedOutEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the SimConnecting Event
+ A SimConnectingEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the SimConnected Event
+ A SimConnectedEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the SimDisconnected Event
+ A SimDisconnectedEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the Disconnected Event
+ A DisconnectedEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the SimChanged Event
+ A SimChangedEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the EventQueueRunning Event
+ A EventQueueRunningEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ All of the simulators we are currently connected to
+
+
+ Handlers for incoming capability events
+
+
+ Handlers for incoming packets
+
+
+ Incoming packets that are awaiting handling
+
+
+ Outgoing packets that are awaiting handling
+
+
+
+ Default constructor
+
+ Reference to the GridClient object
+
+
+
+ Register an event handler for a packet. This is a low level event
+ interface and should only be used if you are doing something not
+ supported in the library
+
+ Packet type to trigger events for
+ Callback to fire when a packet of this type
+ is received
+
+
+
+ Unregister an event handler for a packet. This is a low level event
+ interface and should only be used if you are doing something not
+ supported in the library
+
+ Packet type this callback is registered with
+ Callback to stop firing events for
+
+
+
+ Register a CAPS event handler. This is a low level event interface
+ and should only be used if you are doing something not supported in
+ the library
+
+ Name of the CAPS event to register a handler for
+ Callback to fire when a CAPS event is received
+
+
+
+ Unregister a CAPS event handler. This is a low level event interface
+ and should only be used if you are doing something not supported in
+ the library
+
+ Name of the CAPS event this callback is
+ registered with
+ Callback to stop firing events for
+
+
+
+ Send a packet to the simulator the avatar is currently occupying
+
+ Packet to send
+
+
+
+ Send a packet to a specified simulator
+
+ Packet to send
+ Simulator to send the packet to
+
+
+
+ Connect to a simulator
+
+ IP address to connect to
+ Port to connect to
+ Handle for this simulator, to identify its
+ location in the grid
+ Whether to set CurrentSim to this new
+ connection, use this if the avatar is moving in to this simulator
+ URL of the capabilities server to use for
+ this sim connection
+ A Simulator object on success, otherwise null
+
+
+
+ Connect to a simulator
+
+ IP address and port to connect to
+ Handle for this simulator, to identify its
+ location in the grid
+ Whether to set CurrentSim to this new
+ connection, use this if the avatar is moving in to this simulator
+ URL of the capabilities server to use for
+ this sim connection
+ A Simulator object on success, otherwise null
+
+
+
+ Initiate a blocking logout request. This will return when the logout
+ handshake has completed or when Settings.LOGOUT_TIMEOUT
+ has expired and the network layer is manually shut down
+
+
+
+
+ Initiate the logout process. Check if logout succeeded with the
+ OnLogoutReply
event, and if this does not fire the
+ Shutdown()
function needs to be manually called
+
+
+
+
+ Close a connection to the given simulator
+
+
+
+
+
+
+ Shutdown will disconnect all the sims except for the current sim
+ first, and then kill the connection to CurrentSim. This should only
+ be called if the logout process times out on RequestLogout
+
+ Type of shutdown
+
+
+
+ Shutdown will disconnect all the sims except for the current sim
+ first, and then kill the connection to CurrentSim. This should only
+ be called if the logout process times out on RequestLogout
+
+ Type of shutdown
+ Shutdown message
+
+
+
+ Searches through the list of currently connected simulators to find
+ one attached to the given IPEndPoint
+
+ IPEndPoint of the Simulator to search for
+ A Simulator reference on success, otherwise null
+
+
+
+ Fire an event when an event queue connects for capabilities
+
+ Simulator the event queue is attached to
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Raised when the simulator sends us data containing
+ ...
+
+
+ Called when a reply is received from the login server, the
+ login sequence will block until this event returns
+
+
+ Current state of logging in
+
+
+ Upon login failure, contains a short string key for the
+ type of login error that occurred
+
+
+ The raw XML-RPC reply from the login server, exactly as it
+ was received (minus the HTTP header)
+
+
+ During login this contains a descriptive version of
+ LoginStatusCode. After a successful login this will contain the
+ message of the day, and after a failed login a descriptive error
+ message will be returned
+
+
+ Raised when the simulator sends us data containing
+ ...
+
+
+ Raised when the simulator sends us data containing
+ ...
+
+
+ Raised when the simulator sends us data containing
+ ...
+
+
+ Raised when the simulator sends us data containing
+ ...
+
+
+ Raised when the simulator sends us data containing
+ ...
+
+
+ Raised when the simulator sends us data containing
+ ...
+
+
+ Raised when the simulator sends us data containing
+ ...
+
+
+ Raised when the simulator sends us data containing
+ ...
+
+
+ Unique identifier associated with our connections to
+ simulators
+
+
+ The simulator that the logged in avatar is currently
+ occupying
+
+
+ Shows whether the network layer is logged in to the
+ grid or not
+
+
+ Number of packets in the incoming queue
+
+
+ Number of packets in the outgoing queue
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Explains why a simulator or the grid disconnected from us
+
+
+
+ The client requested the logout or simulator disconnect
+
+
+ The server notified us that it is disconnecting
+
+
+ Either a socket was closed or network traffic timed out
+
+
+ The last active simulator shut down
+
+
+
+ Holds a simulator reference and a decoded packet, these structs are put in
+ the packet inbox for event handling
+
+
+
+ Reference to the simulator that this packet came from
+
+
+ Packet that needs to be processed
+
+
+
+ Holds a simulator reference and a serialized packet, these structs are put in
+ the packet outbox for sending
+
+
+
+ Reference to the simulator this packet is destined for
+
+
+ Packet that needs to be sent
+
+
+ Sequence number of the wrapped packet
+
+
+ Number of times this packet has been resent
+
+
+ Environment.TickCount when this packet was last sent over the wire
+
+
+
+ The InternalDictionary class is used through the library for storing key/value pairs.
+ It is intended to be a replacement for the generic Dictionary class and should
+ be used in its place. It contains several methods for allowing access to the data from
+ outside the library that are read only and thread safe.
+
+
+ Key
+ Value
+
+
+ Internal dictionary that this class wraps around. Do not
+ modify or enumerate the contents of this dictionary without locking
+ on this member
+
+
+
+ Initializes a new instance of the Class
+ with the specified key/value, has the default initial capacity.
+
+
+
+ // initialize a new InternalDictionary named testDict with a string as the key and an int as the value.
+ public InternalDictionary<string, int> testDict = new InternalDictionary<string, int>();
+
+
+
+
+
+ Initializes a new instance of the Class
+ with the specified key/value, has its initial valies copied from the specified
+
+
+
+ to copy initial values from
+
+
+ // initialize a new InternalDictionary named testAvName with a UUID as the key and an string as the value.
+ // populates with copied values from example KeyNameCache Dictionary.
+
+ // create source dictionary
+ Dictionary<UUID, string> KeyNameCache = new Dictionary<UUID, string>();
+ KeyNameCache.Add("8300f94a-7970-7810-cf2c-fc9aa6cdda24", "Jack Avatar");
+ KeyNameCache.Add("27ba1e40-13f7-0708-3e98-5819d780bd62", "Jill Avatar");
+
+ // Initialize new dictionary.
+ public InternalDictionary<UUID, string> testAvName = new InternalDictionary<UUID, string>(KeyNameCache);
+
+
+
+
+
+ Initializes a new instance of the Class
+ with the specified key/value, With its initial capacity specified.
+
+ Initial size of dictionary
+
+
+ // initialize a new InternalDictionary named testDict with a string as the key and an int as the value,
+ // initially allocated room for 10 entries.
+ public InternalDictionary<string, int> testDict = new InternalDictionary<string, int>(10);
+
+
+
+
+
+ Try to get entry from with specified key
+
+ Key to use for lookup
+ Value returned
+ if specified key exists, if not found
+
+
+ // find your avatar using the Simulator.ObjectsAvatars InternalDictionary:
+ Avatar av;
+ if (Client.Network.CurrentSim.ObjectsAvatars.TryGetValue(Client.Self.AgentID, out av))
+ Console.WriteLine("Found Avatar {0}", av.Name);
+
+
+
+
+
+
+ Finds the specified match.
+
+ The match.
+ Matched value
+
+
+ // use a delegate to find a prim in the ObjectsPrimitives InternalDictionary
+ // with the ID 95683496
+ uint findID = 95683496;
+ Primitive findPrim = sim.ObjectsPrimitives.Find(
+ delegate(Primitive prim) { return prim.ID == findID; });
+
+
+
+
+ Find All items in an
+ return matching items.
+ a containing found items.
+
+ Find All prims within 20 meters and store them in a List
+
+ int radius = 20;
+ List<Primitive> prims = Client.Network.CurrentSim.ObjectsPrimitives.FindAll(
+ delegate(Primitive prim) {
+ Vector3 pos = prim.Position;
+ return ((prim.ParentID == 0) && (pos != Vector3.Zero) && (Vector3.Distance(pos, location) < radius));
+ }
+ );
+
+
+
+
+ Find All items in an
+ return matching keys.
+ a containing found keys.
+
+ Find All keys which also exist in another dictionary
+
+ List<UUID> matches = myDict.FindAll(
+ delegate(UUID id) {
+ return myOtherDict.ContainsKey(id);
+ }
+ );
+
+
+
+
+ Perform an on each entry in an
+ to perform
+
+
+ // Iterates over the ObjectsPrimitives InternalDictionary and prints out some information.
+ Client.Network.CurrentSim.ObjectsPrimitives.ForEach(
+ delegate(Primitive prim)
+ {
+ if (prim.Text != null)
+ {
+ Console.WriteLine("NAME={0} ID = {1} TEXT = '{2}'",
+ prim.PropertiesFamily.Name, prim.ID, prim.Text);
+ }
+ });
+
+
+
+
+ Perform an on each key of an
+ to perform
+
+
+
+ Perform an on each KeyValuePair of an
+
+ to perform
+
+
+ Check if Key exists in Dictionary
+ Key to check for
+ if found, otherwise
+
+
+ Check if Value exists in Dictionary
+ Value to check for
+ if found, otherwise
+
+
+
+ Adds the specified key to the dictionary, dictionary locking is not performed,
+
+
+ The key
+ The value
+
+
+
+ Removes the specified key, dictionary locking is not performed
+
+ The key.
+ if successful, otherwise
+
+
+
+ Gets the number of Key/Value pairs contained in the
+
+
+
+
+ Indexer for the dictionary
+
+ The key
+ The value
+
+
+
+ Permission request flags, asked when a script wants to control an Avatar
+
+
+
+ Placeholder for empty values, shouldn't ever see this
+
+
+ Script wants ability to take money from you
+
+
+ Script wants to take camera controls for you
+
+
+ Script wants to remap avatars controls
+
+
+ Script wants to trigger avatar animations
+ This function is not implemented on the grid
+
+
+ Script wants to attach or detach the prim or primset to your avatar
+
+
+ Script wants permission to release ownership
+ This function is not implemented on the grid
+ The concept of "public" objects does not exist anymore.
+
+
+ Script wants ability to link/delink with other prims
+
+
+ Script wants permission to change joints
+ This function is not implemented on the grid
+
+
+ Script wants permissions to change permissions
+ This function is not implemented on the grid
+
+
+ Script wants to track avatars camera position and rotation
+
+
+ Script wants to control your camera
+
+
+
+ Special commands used in Instant Messages
+
+
+
+ Indicates a regular IM from another agent
+
+
+ Simple notification box with an OK button
+
+
+ You've been invited to join a group.
+
+
+ Inventory offer
+
+
+ Accepted inventory offer
+
+
+ Declined inventory offer
+
+
+ Group vote
+
+
+ An object is offering its inventory
+
+
+ Accept an inventory offer from an object
+
+
+ Decline an inventory offer from an object
+
+
+ Unknown
+
+
+ Start a session, or add users to a session
+
+
+ Start a session, but don't prune offline users
+
+
+ Start a session with your group
+
+
+ Start a session without a calling card (finder or objects)
+
+
+ Send a message to a session
+
+
+ Leave a session
+
+
+ Indicates that the IM is from an object
+
+
+ Sent an IM to a busy user, this is the auto response
+
+
+ Shows the message in the console and chat history
+
+
+ Send a teleport lure
+
+
+ Response sent to the agent which inititiated a teleport invitation
+
+
+ Response sent to the agent which inititiated a teleport invitation
+
+
+ Only useful if you have Linden permissions
+
+
+ A placeholder type for future expansion, currently not
+ used
+
+
+ IM to tell the user to go to an URL
+
+
+ IM for help
+
+
+ IM sent automatically on call for help, sends a lure
+ to each Helper reached
+
+
+ Like an IM but won't go to email
+
+
+ IM from a group officer to all group members
+
+
+ Unknown
+
+
+ Unknown
+
+
+ Accept a group invitation
+
+
+ Decline a group invitation
+
+
+ Unknown
+
+
+ An avatar is offering you friendship
+
+
+ An avatar has accepted your friendship offer
+
+
+ An avatar has declined your friendship offer
+
+
+ Indicates that a user has started typing
+
+
+ Indicates that a user has stopped typing
+
+
+
+ Flag in Instant Messages, whether the IM should be delivered to
+ offline avatars as well
+
+
+
+ Only deliver to online avatars
+
+
+ If the avatar is offline the message will be held until
+ they login next, and possibly forwarded to their e-mail account
+
+
+
+ Conversion type to denote Chat Packet types in an easier-to-understand format
+
+
+
+ Whisper (5m radius)
+
+
+ Normal chat (10/20m radius), what the official viewer typically sends
+
+
+ Shouting! (100m radius)
+
+
+ Event message when an Avatar has begun to type
+
+
+ Event message when an Avatar has stopped typing
+
+
+ Send the message to the debug channel
+
+
+ Event message when an object uses llOwnerSay
+
+
+ Special value to support llRegionSay, never sent to the client
+
+
+
+ Identifies the source of a chat message
+
+
+
+ Chat from the grid or simulator
+
+
+ Chat from another avatar
+
+
+ Chat from an object
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Effect type used in ViewerEffect packets
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Project a beam from a source to a destination, such as
+ the one used when editing an object
+
+
+
+
+
+
+
+
+
+
+
+ Create a swirl of particles around an object
+
+
+
+
+
+
+
+
+ Cause an avatar to look at an object
+
+
+ Cause an avatar to point at an object
+
+
+
+ The action an avatar is doing when looking at something, used in
+ ViewerEffect packets for the LookAt effect
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Deprecated
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ The action an avatar is doing when pointing at something, used in
+ ViewerEffect packets for the PointAt effect
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Money transaction types
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Flags sent when a script takes or releases a control
+
+ NOTE: (need to verify) These might be a subset of the ControlFlags enum in Movement,
+
+
+ No Flags set
+
+
+ Forward (W or up Arrow)
+
+
+ Back (S or down arrow)
+
+
+ Move left (shift+A or left arrow)
+
+
+ Move right (shift+D or right arrow)
+
+
+ Up (E or PgUp)
+
+
+ Down (C or PgDown)
+
+
+ Rotate left (A or left arrow)
+
+
+ Rotate right (D or right arrow)
+
+
+ Left Mouse Button
+
+
+ Left Mouse button in MouseLook
+
+
+
+ Currently only used to hide your group title
+
+
+
+ No flags set
+
+
+ Hide your group title
+
+
+
+ Action state of the avatar, which can currently be typing and
+ editing
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Current teleport status
+
+
+
+ Unknown status
+
+
+ Teleport initialized
+
+
+ Teleport in progress
+
+
+ Teleport failed
+
+
+ Teleport completed
+
+
+ Teleport cancelled
+
+
+
+
+
+
+
+ No flags set, or teleport failed
+
+
+ Set when newbie leaves help island for first time
+
+
+
+
+
+ Via Lure
+
+
+ Via Landmark
+
+
+ Via Location
+
+
+ Via Home
+
+
+ Via Telehub
+
+
+ Via Login
+
+
+ Linden Summoned
+
+
+ Linden Forced me
+
+
+
+
+
+ Agent Teleported Home via Script
+
+
+
+
+
+
+
+
+
+
+
+ forced to new location for example when avatar is banned or ejected
+
+
+ Teleport Finished via a Lure
+
+
+ Finished, Sim Changed
+
+
+ Finished, Same Sim
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Instant Message
+
+
+
+ Key of sender
+
+
+ Name of sender
+
+
+ Key of destination avatar
+
+
+ ID of originating estate
+
+
+ Key of originating region
+
+
+ Coordinates in originating region
+
+
+ Instant message type
+
+
+ Group IM session toggle
+
+
+ Key of IM session, for Group Messages, the groups UUID
+
+
+ Timestamp of the instant message
+
+
+ Instant message text
+
+
+ Whether this message is held for offline avatars
+
+
+ Context specific packed data
+
+
+ Print the struct data as a string
+ A string containing the field name, and field value
+
+
+
+
+
+
+
+
+ Construct a new instance of the ChatEventArgs object
+
+ Sim from which the message originates
+ The message sent
+ The audible level of the message
+ The type of message sent: whisper, shout, etc
+ The source type of the message sender
+ The name of the agent or object sending the message
+ The ID of the agent or object sending the message
+ The ID of the object owner, or the agent ID sending the message
+ The position of the agent or object sending the message
+
+
+ Get the simulator sending the message
+
+
+ Get the message sent
+
+
+ Get the audible level of the message
+
+
+ Get the type of message sent: whisper, shout, etc
+
+
+ Get the source type of the message sender
+
+
+ Get the name of the agent or object sending the message
+
+
+ Get the ID of the agent or object sending the message
+
+
+ Get the ID of the object owner, or the agent ID sending the message
+
+
+ Get the position of the agent or object sending the message
+
+
+ Contains the data sent when a primitive opens a dialog with this agent
+
+
+
+ Construct a new instance of the ScriptDialogEventArgs
+
+ The dialog message
+ The name of the object that sent the dialog request
+ The ID of the image to be displayed
+ The ID of the primitive sending the dialog
+ The first name of the senders owner
+ The last name of the senders owner
+ The communication channel the dialog was sent on
+ The string labels containing the options presented in this dialog
+
+
+ Get the dialog message
+
+
+ Get the name of the object that sent the dialog request
+
+
+ Get the ID of the image to be displayed
+
+
+ Get the ID of the primitive sending the dialog
+
+
+ Get the first name of the senders owner
+
+
+ Get the last name of the senders owner
+
+
+ Get the communication channel the dialog was sent on, responses
+ should also send responses on this same channel
+
+
+ Get the string labels containing the options presented in this dialog
+
+
+ Contains the data sent when a primitive requests debit or other permissions
+ requesting a YES or NO answer
+
+
+
+ Construct a new instance of the ScriptQuestionEventArgs
+
+ The simulator containing the object sending the request
+ The ID of the script making the request
+ The ID of the primitive containing the script making the request
+ The name of the primitive making the request
+ The name of the owner of the object making the request
+ The permissions being requested
+
+
+ Get the simulator containing the object sending the request
+
+
+ Get the ID of the script making the request
+
+
+ Get the ID of the primitive containing the script making the request
+
+
+ Get the name of the primitive making the request
+
+
+ Get the name of the owner of the object making the request
+
+
+ Get the permissions being requested
+
+
+ Contains the data sent when a primitive sends a request
+ to an agent to open the specified URL
+
+
+
+ Construct a new instance of the LoadUrlEventArgs
+
+ The name of the object sending the request
+ The ID of the object sending the request
+ The ID of the owner of the object sending the request
+ True if the object is owned by a group
+ The message sent with the request
+ The URL the object sent
+
+
+ Get the name of the object sending the request
+
+
+ Get the ID of the object sending the request
+
+
+ Get the ID of the owner of the object sending the request
+
+
+ True if the object is owned by a group
+
+
+ Get the message sent with the request
+
+
+ Get the URL the object sent
+
+
+ The date received from an ImprovedInstantMessage
+
+
+
+ Construct a new instance of the InstantMessageEventArgs object
+
+ the InstantMessage object
+ the simulator where the InstantMessage origniated
+
+
+ Get the InstantMessage object
+
+
+ Get the simulator where the InstantMessage origniated
+
+
+ Contains the currency balance
+
+
+
+ Construct a new BalanceEventArgs object
+
+ The currenct balance
+
+
+
+ Get the currenct balance
+
+
+
+ Contains the transaction summary when an item is purchased,
+ money is given, or land is purchased
+
+
+
+ Construct a new instance of the MoneyBalanceReplyEventArgs object
+
+ The ID of the transaction
+ True of the transaction was successful
+ The current currency balance
+ The meters credited
+ The meters comitted
+ A brief description of the transaction
+
+
+ Get the ID of the transaction
+
+
+ True of the transaction was successful
+
+
+ Get the remaining currency balance
+
+
+ Get the meters credited
+
+
+ Get the meters comitted
+
+
+ Get the description of the transaction
+
+
+ Data sent from the simulator containing information about your agent and active group information
+
+
+
+ Construct a new instance of the AgentDataReplyEventArgs object
+
+ The agents first name
+ The agents last name
+ The agents active group ID
+ The group title of the agents active group
+ The combined group powers the agent has in the active group
+ The name of the group the agent has currently active
+
+
+ Get the agents first name
+
+
+ Get the agents last name
+
+
+ Get the active group ID of your agent
+
+
+ Get the active groups title of your agent
+
+
+ Get the combined group powers of your agent
+
+
+ Get the active group name of your agent
+
+
+ Data sent by the simulator to indicate the active/changed animations
+ applied to your agent
+
+
+
+ Construct a new instance of the AnimationsChangedEventArgs class
+
+ The dictionary that contains the changed animations
+
+
+ Get the dictionary that contains the changed animations
+
+
+
+ Data sent from a simulator indicating a collision with your agent
+
+
+
+
+ Construct a new instance of the MeanCollisionEventArgs class
+
+ The type of collision that occurred
+ The ID of the agent or object that perpetrated the agression
+ The ID of the Victim
+ The strength of the collision
+ The Time the collision occurred
+
+
+ Get the Type of collision
+
+
+ Get the ID of the agent or object that collided with your agent
+
+
+ Get the ID of the agent that was attacked
+
+
+ A value indicating the strength of the collision
+
+
+ Get the time the collision occurred
+
+
+ Data sent to your agent when it crosses region boundaries
+
+
+
+ Construct a new instance of the RegionCrossedEventArgs class
+
+ The simulator your agent just left
+ The simulator your agent is now in
+
+
+ Get the simulator your agent just left
+
+
+ Get the simulator your agent is now in
+
+
+ Data sent from the simulator when your agent joins a group chat session
+
+
+
+ Construct a new instance of the GroupChatJoinedEventArgs class
+
+ The ID of the session
+ The name of the session
+ A temporary session id used for establishing new sessions
+ True of your agent successfully joined the session
+
+
+ Get the ID of the group chat session
+
+
+ Get the name of the session
+
+
+ Get the temporary session ID used for establishing new sessions
+
+
+ True if your agent successfully joined the session
+
+
+ Data sent by the simulator containing urgent messages
+
+
+
+ Construct a new instance of the AlertMessageEventArgs class
+
+ The alert message
+
+
+ Get the alert message
+
+
+ Data sent by a script requesting to take or release specified controls to your agent
+
+
+
+ Construct a new instance of the ScriptControlEventArgs class
+
+ The controls the script is attempting to take or release to the agent
+ True if the script is passing controls back to the agent
+ True if the script is requesting controls be released to the script
+
+
+ Get the controls the script is attempting to take or release to the agent
+
+
+ True if the script is passing controls back to the agent
+
+
+ True if the script is requesting controls be released to the script
+
+
+
+ Data sent from the simulator to an agent to indicate its view limits
+
+
+
+
+ Construct a new instance of the CameraConstraintEventArgs class
+
+ The collision plane
+
+
+ Get the collision plane
+
+
+
+ Data containing script sensor requests which allow an agent to know the specific details
+ of a primitive sending script sensor requests
+
+
+
+
+ Construct a new instance of the ScriptSensorReplyEventArgs
+
+ The ID of the primitive sending the sensor
+ The ID of the group associated with the primitive
+ The name of the primitive sending the sensor
+ The ID of the primitive sending the sensor
+ The ID of the owner of the primitive sending the sensor
+ The position of the primitive sending the sensor
+ The range the primitive specified to scan
+ The rotation of the primitive sending the sensor
+ The type of sensor the primitive sent
+ The velocity of the primitive sending the sensor
+
+
+ Get the ID of the primitive sending the sensor
+
+
+ Get the ID of the group associated with the primitive
+
+
+ Get the name of the primitive sending the sensor
+
+
+ Get the ID of the primitive sending the sensor
+
+
+ Get the ID of the owner of the primitive sending the sensor
+
+
+ Get the position of the primitive sending the sensor
+
+
+ Get the range the primitive specified to scan
+
+
+ Get the rotation of the primitive sending the sensor
+
+
+ Get the type of sensor the primitive sent
+
+
+ Get the velocity of the primitive sending the sensor
+
+
+ Contains the response data returned from the simulator in response to a
+
+
+ Construct a new instance of the AvatarSitResponseEventArgs object
+
+
+ Get the ID of the primitive the agent will be sitting on
+
+
+ True if the simulator Autopilot functions were involved
+
+
+ Get the camera offset of the agent when seated
+
+
+ Get the camera eye offset of the agent when seated
+
+
+ True of the agent will be in mouselook mode when seated
+
+
+ Get the position of the agent when seated
+
+
+ Get the rotation of the agent when seated
+
+
+ Data sent when an agent joins a chat session your agent is currently participating in
+
+
+
+ Construct a new instance of the ChatSessionMemberAddedEventArgs object
+
+ The ID of the chat session
+ The ID of the agent joining
+
+
+ Get the ID of the chat session
+
+
+ Get the ID of the agent that joined
+
+
+ Data sent when an agent exits a chat session your agent is currently participating in
+
+
+
+ Construct a new instance of the ChatSessionMemberLeftEventArgs object
+
+ The ID of the chat session
+ The ID of the Agent that left
+
+
+ Get the ID of the chat session
+
+
+ Get the ID of the agent that left
+
+
+
+ Extract the avatar UUID encoded in a SIP URI
+
+
+
+
+
+
+ Represents a Sound Asset
+
+
+
+ Initializes a new instance of an AssetSound object
+
+
+ Initializes a new instance of an AssetSound object with parameters
+ A unique specific to this asset
+ A byte array containing the raw asset data
+
+
+
+ TODO: Encodes a sound file
+
+
+
+
+ TODO: Decode a sound file
+
+ true
+
+
+ Override the base classes AssetType
+
+
+
+ Represents an LSL Text object containing a string of UTF encoded characters
+
+
+
+ A string of characters represting the script contents
+
+
+ Initializes a new AssetScriptText object
+
+
+
+ Initializes a new AssetScriptText object with parameters
+
+ A unique specific to this asset
+ A byte array containing the raw asset data
+
+
+
+ Initializes a new AssetScriptText object with parameters
+
+ A string containing the scripts contents
+
+
+
+ Encode a string containing the scripts contents into byte encoded AssetData
+
+
+
+
+ Decode a byte array containing the scripts contents into a string
+
+ true if decoding is successful
+
+
+ Override the base classes AssetType
+
+
+
+
+
+
+
+ No report
+
+
+ Unknown report type
+
+
+ Bug report
+
+
+ Complaint report
+
+
+ Customer service report
+
+
+
+ Bitflag field for ObjectUpdateCompressed data blocks, describing
+ which options are present for each object
+
+
+
+ Unknown
+
+
+ Whether the object has a TreeSpecies
+
+
+ Whether the object has floating text ala llSetText
+
+
+ Whether the object has an active particle system
+
+
+ Whether the object has sound attached to it
+
+
+ Whether the object is attached to a root object or not
+
+
+ Whether the object has texture animation settings
+
+
+ Whether the object has an angular velocity
+
+
+ Whether the object has a name value pairs string
+
+
+ Whether the object has a Media URL set
+
+
+
+ Specific Flags for MultipleObjectUpdate requests
+
+
+
+ None
+
+
+ Change position of prims
+
+
+ Change rotation of prims
+
+
+ Change size of prims
+
+
+ Perform operation on link set
+
+
+ Scale prims uniformly, same as selecing ctrl+shift in the
+ viewer. Used in conjunction with Scale
+
+
+
+ Special values in PayPriceReply. If the price is not one of these
+ literal value of the price should be use
+
+
+
+
+ Indicates that this pay option should be hidden
+
+
+
+
+ Indicates that this pay option should have the default value
+
+
+
+
+ Contains the variables sent in an object update packet for objects.
+ Used to track position and movement of prims and avatars
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Handles all network traffic related to prims and avatar positions and
+ movement.
+
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the ObjectUpdate Event
+ A ObjectUpdateEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the ObjectProperties Event
+ A ObjectPropertiesEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the ObjectPropertiesUpdated Event
+ A ObjectPropertiesUpdatedEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the ObjectPropertiesFamily Event
+ A ObjectPropertiesFamilyEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the AvatarUpdate Event
+ A AvatarUpdateEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the TerseObjectUpdate Event
+ A TerseObjectUpdateEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the ObjectDataBlockUpdate Event
+ A ObjectDataBlockUpdateEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the KillObject Event
+ A KillObjectEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the AvatarSitChanged Event
+ A AvatarSitChangedEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the PayPriceReply Event
+ A PayPriceReplyEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ Reference to the GridClient object
+
+
+ Does periodic dead reckoning calculation to convert
+ velocity and acceleration to new positions for objects
+
+
+
+ Construct a new instance of the ObjectManager class
+
+ A reference to the instance
+
+
+
+ Request information for a single object from a
+ you are currently connected to
+
+ The the object is located
+ The Local ID of the object
+
+
+
+ Request information for multiple objects contained in
+ the same simulator
+
+ The the objects are located
+ An array containing the Local IDs of the objects
+
+
+
+ Attempt to purchase an original object, a copy, or the contents of
+ an object
+
+ The the object is located
+ The Local ID of the object
+ Whether the original, a copy, or the object
+ contents are on sale. This is used for verification, if the this
+ sale type is not valid for the object the purchase will fail
+ Price of the object. This is used for
+ verification, if it does not match the actual price the purchase
+ will fail
+ Group ID that will be associated with the new
+ purchase
+ Inventory folder UUID where the object or objects
+ purchased should be placed
+
+
+ BuyObject(Client.Network.CurrentSim, 500, SaleType.Copy,
+ 100, UUID.Zero, Client.Self.InventoryRootFolderUUID);
+
+
+
+
+
+ Request prices that should be displayed in pay dialog. This will triggger the simulator
+ to send us back a PayPriceReply which can be handled by OnPayPriceReply event
+
+ The the object is located
+ The ID of the object
+ The result is raised in the event
+
+
+
+ Select a single object. This will cause the to send us
+ an which will raise the event
+
+ The the object is located
+ The Local ID of the object
+
+
+
+
+ Select a single object. This will cause the to send us
+ an which will raise the event
+
+ The the object is located
+ The Local ID of the object
+ if true, a call to is
+ made immediately following the request
+
+
+
+
+ Select multiple objects. This will cause the to send us
+ an which will raise the event
+
+ The the objects are located
+ An array containing the Local IDs of the objects
+ Should objects be deselected immediately after selection
+
+
+
+
+ Select multiple objects. This will cause the to send us
+ an which will raise the event
+
+ The the objects are located
+ An array containing the Local IDs of the objects
+
+
+
+
+ Update the properties of an object
+
+ The the object is located
+ The Local ID of the object
+ true to turn the objects physical property on
+ true to turn the objects temporary property on
+ true to turn the objects phantom property on
+ true to turn the objects cast shadows property on
+
+
+
+ Sets the sale properties of a single object
+
+ The the object is located
+ The Local ID of the object
+ One of the options from the enum
+ The price of the object
+
+
+
+ Sets the sale properties of multiple objects
+
+ The the objects are located
+ An array containing the Local IDs of the objects
+ One of the options from the enum
+ The price of the object
+
+
+
+ Deselect a single object
+
+ The the object is located
+ The Local ID of the object
+
+
+
+ Deselect multiple objects.
+
+ The the objects are located
+ An array containing the Local IDs of the objects
+
+
+
+ Perform a click action on an object
+
+ The the object is located
+ The Local ID of the object
+
+
+
+ Perform a click action (Grab) on a single object
+
+ The the object is located
+ The Local ID of the object
+ The texture coordinates to touch
+ The surface coordinates to touch
+ The face of the position to touch
+ The region coordinates of the position to touch
+ The surface normal of the position to touch (A normal is a vector perpindicular to the surface)
+ The surface binormal of the position to touch (A binormal is a vector tangen to the surface
+ pointing along the U direction of the tangent space
+
+
+
+ Create (rez) a new prim object in a simulator
+
+ A reference to the object to place the object in
+ Data describing the prim object to rez
+ Group ID that this prim will be set to, or UUID.Zero if you
+ do not want the object to be associated with a specific group
+ An approximation of the position at which to rez the prim
+ Scale vector to size this prim
+ Rotation quaternion to rotate this prim
+ Due to the way client prim rezzing is done on the server,
+ the requested position for an object is only close to where the prim
+ actually ends up. If you desire exact placement you'll need to
+ follow up by moving the object after it has been created. This
+ function will not set textures, light and flexible data, or other
+ extended primitive properties
+
+
+
+ Create (rez) a new prim object in a simulator
+
+ A reference to the object to place the object in
+ Data describing the prim object to rez
+ Group ID that this prim will be set to, or UUID.Zero if you
+ do not want the object to be associated with a specific group
+ An approximation of the position at which to rez the prim
+ Scale vector to size this prim
+ Rotation quaternion to rotate this prim
+ Specify the
+ Due to the way client prim rezzing is done on the server,
+ the requested position for an object is only close to where the prim
+ actually ends up. If you desire exact placement you'll need to
+ follow up by moving the object after it has been created. This
+ function will not set textures, light and flexible data, or other
+ extended primitive properties
+
+
+
+ Rez a Linden tree
+
+ A reference to the object where the object resides
+ The size of the tree
+ The rotation of the tree
+ The position of the tree
+ The Type of tree
+ The of the group to set the tree to,
+ or UUID.Zero if no group is to be set
+ true to use the "new" Linden trees, false to use the old
+
+
+
+ Rez grass and ground cover
+
+ A reference to the object where the object resides
+ The size of the grass
+ The rotation of the grass
+ The position of the grass
+ The type of grass from the enum
+ The of the group to set the tree to,
+ or UUID.Zero if no group is to be set
+
+
+
+ Set the textures to apply to the faces of an object
+
+ A reference to the object where the object resides
+ The objects ID which is local to the simulator the object is in
+ The texture data to apply
+
+
+
+ Set the textures to apply to the faces of an object
+
+ A reference to the object where the object resides
+ The objects ID which is local to the simulator the object is in
+ The texture data to apply
+ A media URL (not used)
+
+
+
+ Set the Light data on an object
+
+ A reference to the object where the object resides
+ The objects ID which is local to the simulator the object is in
+ A object containing the data to set
+
+
+
+ Set the flexible data on an object
+
+ A reference to the object where the object resides
+ The objects ID which is local to the simulator the object is in
+ A object containing the data to set
+
+
+
+ Set the sculptie texture and data on an object
+
+ A reference to the object where the object resides
+ The objects ID which is local to the simulator the object is in
+ A object containing the data to set
+
+
+
+ Unset additional primitive parameters on an object
+
+ A reference to the object where the object resides
+ The objects ID which is local to the simulator the object is in
+ The extra parameters to set
+
+
+
+ Link multiple prims into a linkset
+
+ A reference to the object where the objects reside
+ An array which contains the IDs of the objects to link
+ The last object in the array will be the root object of the linkset TODO: Is this true?
+
+
+
+ Delink/Unlink multiple prims from a linkset
+
+ A reference to the object where the objects reside
+ An array which contains the IDs of the objects to delink
+
+
+
+ Change the rotation of an object
+
+ A reference to the object where the object resides
+ The objects ID which is local to the simulator the object is in
+ The new rotation of the object
+
+
+
+ Set the name of an object
+
+ A reference to the object where the object resides
+ The objects ID which is local to the simulator the object is in
+ A string containing the new name of the object
+
+
+
+ Set the name of multiple objects
+
+ A reference to the object where the objects reside
+ An array which contains the IDs of the objects to change the name of
+ An array which contains the new names of the objects
+
+
+
+ Set the description of an object
+
+ A reference to the object where the object resides
+ The objects ID which is local to the simulator the object is in
+ A string containing the new description of the object
+
+
+
+ Set the descriptions of multiple objects
+
+ A reference to the object where the objects reside
+ An array which contains the IDs of the objects to change the description of
+ An array which contains the new descriptions of the objects
+
+
+
+ Attach an object to this avatar
+
+ A reference to the object where the object resides
+ The objects ID which is local to the simulator the object is in
+ The point on the avatar the object will be attached
+ The rotation of the attached object
+
+
+
+ Drop an attached object from this avatar
+
+ A reference to the
+ object where the objects reside. This will always be the simulator the avatar is currently in
+
+ The object's ID which is local to the simulator the object is in
+
+
+
+ Detach an object from yourself
+
+ A reference to the
+ object where the objects reside
+
+ This will always be the simulator the avatar is currently in
+
+ An array which contains the IDs of the objects to detach
+
+
+
+ Change the position of an object, Will change position of entire linkset
+
+ A reference to the object where the object resides
+ The objects ID which is local to the simulator the object is in
+ The new position of the object
+
+
+
+ Change the position of an object
+
+ A reference to the object where the object resides
+ The objects ID which is local to the simulator the object is in
+ The new position of the object
+ if true, will change position of (this) child prim only, not entire linkset
+
+
+
+ Change the Scale (size) of an object
+
+ A reference to the object where the object resides
+ The objects ID which is local to the simulator the object is in
+ The new scale of the object
+ If true, will change scale of this prim only, not entire linkset
+ True to resize prims uniformly
+
+
+
+ Change the Rotation of an object that is either a child or a whole linkset
+
+ A reference to the object where the object resides
+ The objects ID which is local to the simulator the object is in
+ The new scale of the object
+ If true, will change rotation of this prim only, not entire linkset
+
+
+
+ Send a Multiple Object Update packet to change the size, scale or rotation of a primitive
+
+ A reference to the object where the object resides
+ The objects ID which is local to the simulator the object is in
+ The new rotation, size, or position of the target object
+ The flags from the Enum
+
+
+
+ Deed an object (prim) to a group, Object must be shared with group which
+ can be accomplished with SetPermissions()
+
+ A reference to the object where the object resides
+ The objects ID which is local to the simulator the object is in
+ The of the group to deed the object to
+
+
+
+ Deed multiple objects (prims) to a group, Objects must be shared with group which
+ can be accomplished with SetPermissions()
+
+ A reference to the object where the object resides
+ An array which contains the IDs of the objects to deed
+ The of the group to deed the object to
+
+
+
+ Set the permissions on multiple objects
+
+ A reference to the object where the objects reside
+ An array which contains the IDs of the objects to set the permissions on
+ The new Who mask to set
+ The new Permissions mark to set
+ TODO: What does this do?
+
+
+
+ Request additional properties for an object
+
+ A reference to the object where the object resides
+
+
+
+
+ Request additional properties for an object
+
+ A reference to the object where the object resides
+ Absolute UUID of the object
+ Whether to require server acknowledgement of this request
+
+
+
+ Set the ownership of a list of objects to the specified group
+
+ A reference to the object where the objects reside
+ An array which contains the IDs of the objects to set the group id on
+ The Groups ID
+
+
+
+ Update current URL of the previously set prim media
+
+ UUID of the prim
+ Set current URL to this
+ Prim face number
+ Simulator in which prim is located
+
+
+
+ Set object media
+
+ UUID of the prim
+ Array the length of prims number of faces. Null on face indexes where there is
+ no media, on faces which contain the media
+ Simulatior in which prim is located
+
+
+
+ Retrieve information about object media
+
+ UUID of the primitive
+ Simulator where prim is located
+ Call this callback when done
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+
+ A terse object update, used when a transformation matrix or
+ velocity/acceleration for an object changes but nothing else
+ (scale/position/rotation/acceleration/velocity)
+
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+
+ Setup construction data for a basic primitive shape
+
+ Primitive shape to construct
+ Construction data that can be plugged into a
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Set the Shape data of an object
+
+ A reference to the object where the object resides
+ The objects ID which is local to the simulator the object is in
+ Data describing the prim shape
+
+
+
+ Set the Material data of an object
+
+ A reference to the object where the object resides
+ The objects ID which is local to the simulator the object is in
+ The new material of the object
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Raised when the simulator sends us data containing
+ A , Foliage or Attachment
+
+
+
+
+ Raised when the simulator sends us data containing
+ additional information
+
+
+
+
+ Raised when the simulator sends us data containing
+ Primitive.ObjectProperties for an object we are currently tracking
+
+
+ Raised when the simulator sends us data containing
+ additional and details
+
+
+
+ Raised when the simulator sends us data containing
+ updated information for an
+
+
+ Raised when the simulator sends us data containing
+ and movement changes
+
+
+ Raised when the simulator sends us data containing
+ updates to an Objects DataBlock
+
+
+ Raised when the simulator informs us an
+ or is no longer within view
+
+
+ Raised when the simulator sends us data containing
+ updated sit information for our
+
+
+ Raised when the simulator sends us data containing
+ purchase price information for a
+
+
+
+ Callback for getting object media data via CAP
+
+ Indicates if the operation was succesfull
+ Object media version string
+ Array indexed on prim face of media entry data
+
+
+ Provides data for the event
+ The event occurs when the simulator sends
+ an containing a Primitive, Foliage or Attachment data
+ Note 1: The event will not be raised when the object is an Avatar
+ Note 2: It is possible for the to be
+ raised twice for the same object if for example the primitive moved to a new simulator, then returned to the current simulator or
+ if an Avatar crosses the border into a new simulator and returns to the current simulator
+
+
+ The following code example uses the , , and
+ properties to display new Primitives and Attachments on the window.
+
+ // Subscribe to the event that gives us prim and foliage information
+ Client.Objects.ObjectUpdate += Objects_ObjectUpdate;
+
+
+ private void Objects_ObjectUpdate(object sender, PrimEventArgs e)
+ {
+ Console.WriteLine("Primitive {0} {1} in {2} is an attachment {3}", e.Prim.ID, e.Prim.LocalID, e.Simulator.Name, e.IsAttachment);
+ }
+
+
+
+
+
+
+
+
+ Construct a new instance of the PrimEventArgs class
+
+ The simulator the object originated from
+ The Primitive
+ The simulator time dilation
+ The prim was not in the dictionary before this update
+ true if the primitive represents an attachment to an agent
+
+
+ Get the simulator the originated from
+
+
+ Get the details
+
+
+ true if the did not exist in the dictionary before this update (always true if object tracking has been disabled)
+
+
+ true if the is attached to an
+
+
+ Get the simulator Time Dilation
+
+
+ Provides data for the event
+ The event occurs when the simulator sends
+ an containing Avatar data
+ Note 1: The event will not be raised when the object is an Avatar
+ Note 2: It is possible for the to be
+ raised twice for the same avatar if for example the avatar moved to a new simulator, then returned to the current simulator
+
+
+ The following code example uses the property to make a request for the top picks
+ using the method in the class to display the names
+ of our own agents picks listings on the window.
+
+ // subscribe to the AvatarUpdate event to get our information
+ Client.Objects.AvatarUpdate += Objects_AvatarUpdate;
+ Client.Avatars.AvatarPicksReply += Avatars_AvatarPicksReply;
+
+ private void Objects_AvatarUpdate(object sender, AvatarUpdateEventArgs e)
+ {
+ // we only want our own data
+ if (e.Avatar.LocalID == Client.Self.LocalID)
+ {
+ // Unsubscribe from the avatar update event to prevent a loop
+ // where we continually request the picks every time we get an update for ourselves
+ Client.Objects.AvatarUpdate -= Objects_AvatarUpdate;
+ // make the top picks request through AvatarManager
+ Client.Avatars.RequestAvatarPicks(e.Avatar.ID);
+ }
+ }
+
+ private void Avatars_AvatarPicksReply(object sender, AvatarPicksReplyEventArgs e)
+ {
+ // we'll unsubscribe from the AvatarPicksReply event since we now have the data
+ // we were looking for
+ Client.Avatars.AvatarPicksReply -= Avatars_AvatarPicksReply;
+ // loop through the dictionary and extract the names of the top picks from our profile
+ foreach (var pickName in e.Picks.Values)
+ {
+ Console.WriteLine(pickName);
+ }
+ }
+
+
+
+
+
+
+
+ Construct a new instance of the AvatarUpdateEventArgs class
+
+ The simulator the packet originated from
+ The data
+ The simulator time dilation
+ The avatar was not in the dictionary before this update
+
+
+ Get the simulator the object originated from
+
+
+ Get the data
+
+
+ Get the simulator time dilation
+
+
+ true if the did not exist in the dictionary before this update (always true if avatar tracking has been disabled)
+
+
+ Provides additional primitive data for the event
+ The event occurs when the simulator sends
+ an containing additional details for a Primitive, Foliage data or Attachment data
+ The event is also raised when a request is
+ made.
+
+
+ The following code example uses the , and
+
+ properties to display new attachments and send a request for additional properties containing the name of the
+ attachment then display it on the window.
+
+ // Subscribe to the event that provides additional primitive details
+ Client.Objects.ObjectProperties += Objects_ObjectProperties;
+
+ // handle the properties data that arrives
+ private void Objects_ObjectProperties(object sender, ObjectPropertiesEventArgs e)
+ {
+ Console.WriteLine("Primitive Properties: {0} Name is {1}", e.Properties.ObjectID, e.Properties.Name);
+ }
+
+
+
+
+
+ Construct a new instance of the ObjectPropertiesEventArgs class
+
+ The simulator the object is located
+ The primitive Properties
+
+
+ Get the simulator the object is located
+
+
+ Get the primitive properties
+
+
+ Provides additional primitive data for the event
+ The event occurs when the simulator sends
+ an containing additional details for a Primitive or Foliage data that is currently
+ being tracked in the dictionary
+ The event is also raised when a request is
+ made and is enabled
+
+
+
+
+ Construct a new instance of the ObjectPropertiesUpdatedEvenrArgs class
+
+ The simulator the object is located
+ The Primitive
+ The primitive Properties
+
+
+ Get the simulator the object is located
+
+
+ Get the primitive details
+
+
+ Get the primitive properties
+
+
+ Provides additional primitive data, permissions and sale info for the event
+ The event occurs when the simulator sends
+ an containing additional details for a Primitive, Foliage data or Attachment. This includes
+ Permissions, Sale info, and other basic details on an object
+ The event is also raised when a request is
+ made, the viewer equivalent is hovering the mouse cursor over an object
+
+
+
+ Get the simulator the object is located
+
+
+
+
+
+
+
+
+ Provides primitive data containing updated location, velocity, rotation, textures for the event
+ The event occurs when the simulator sends updated location, velocity, rotation, etc
+
+
+
+ Get the simulator the object is located
+
+
+ Get the primitive details
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Get the simulator the object is located
+
+
+ Get the primitive details
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Provides notification when an Avatar, Object or Attachment is DeRezzed or moves out of the avatars view for the
+ event
+
+
+ Get the simulator the object is located
+
+
+ The LocalID of the object
+
+
+
+ Provides updates sit position data
+
+
+
+ Get the simulator the object is located
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Get the simulator the object is located
+
+
+
+
+
+
+
+
+
+
+
+
+ Indicates if the operation was successful
+
+
+
+
+ Media version string
+
+
+
+
+ Array of media entries indexed by face number
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ De-serialization constructor for the InventoryNode Class
+
+
+
+
+ Serialization handler for the InventoryNode Class
+
+
+
+
+ De-serialization handler for the InventoryNode Class
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ For inventory folder nodes specifies weather the folder needs to be
+ refreshed from the server
+
+
+
+ Positional vector of the users position
+
+
+ Velocity vector of the position
+
+
+ At Orientation (X axis) of the position
+
+
+ Up Orientation (Y axis) of the position
+
+
+ Left Orientation (Z axis) of the position
+
+
+
+ Temporary code to produce a tar archive in tar v7 format
+
+
+
+
+ Binary writer for the underlying stream
+
+
+
+
+ Write a directory entry to the tar archive. We can only handle one path level right now!
+
+
+
+
+
+ Write a file to the tar archive
+
+
+
+
+
+
+ Write a file to the tar archive
+
+
+
+
+
+
+ Finish writing the raw tar archive data to a stream. The stream will be closed on completion.
+
+
+
+
+ Write a particular entry
+
+
+
+
+
+
+
+ Temporary code to do the bare minimum required to read a tar archive for our purposes
+
+
+
+
+ Binary reader for the underlying stream
+
+
+
+
+ Used to trim off null chars
+
+
+
+
+ Used to trim off space chars
+
+
+
+
+ Generate a tar reader which reads from the given stream.
+
+
+
+
+
+ Read the next entry in the tar file.
+
+
+
+ the data for the entry. Returns null if there are no more entries
+
+
+
+ Read the next 512 byte chunk of data as a tar header.
+
+ A tar header struct. null if we have reached the end of the archive.
+
+
+
+ Read data following a header
+
+
+
+
+
+
+ Convert octal bytes to a decimal representation
+
+
+
+
+
+
+
+ Sort by name
+
+
+ Sort by date
+
+
+ Sort folders by name, regardless of whether items are
+ sorted by name or date
+
+
+ Place system folders at the top
+
+
+
+ Possible destinations for DeRezObject request
+
+
+
+
+
+
+ Copy from in-world to agent inventory
+
+
+ Derez to TaskInventory
+
+
+
+
+
+ Take Object
+
+
+
+
+
+ Delete Object
+
+
+ Put an avatar attachment into agent inventory
+
+
+
+
+
+ Return an object back to the owner's inventory
+
+
+ Return a deeded object back to the last owner's inventory
+
+
+
+ Upper half of the Flags field for inventory items
+
+
+
+ Indicates that the NextOwner permission will be set to the
+ most restrictive set of permissions found in the object set
+ (including linkset items and object inventory items) on next rez
+
+
+ Indicates that the object sale information has been
+ changed
+
+
+ If set, and a slam bit is set, indicates BaseMask will be overwritten on Rez
+
+
+ If set, and a slam bit is set, indicates OwnerMask will be overwritten on Rez
+
+
+ If set, and a slam bit is set, indicates GroupMask will be overwritten on Rez
+
+
+ If set, and a slam bit is set, indicates EveryoneMask will be overwritten on Rez
+
+
+ If set, and a slam bit is set, indicates NextOwnerMask will be overwritten on Rez
+
+
+ Indicates whether this object is composed of multiple
+ items or not
+
+
+ Indicates that the asset is only referenced by this
+ inventory item. If this item is deleted or updated to reference a
+ new assetID, the asset can be deleted
+
+
+
+ Base Class for Inventory Items
+
+
+
+ of item/folder
+
+
+ of parent folder
+
+
+ Name of item/folder
+
+
+ Item/Folder Owners
+
+
+
+ Constructor, takes an itemID as a parameter
+
+ The of the item
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Generates a number corresponding to the value of the object to support the use of a hash table,
+ suitable for use in hashing algorithms and data structures such as a hash table
+
+ A Hashcode of all the combined InventoryBase fields
+
+
+
+ Determine whether the specified object is equal to the current object
+
+ InventoryBase object to compare against
+ true if objects are the same
+
+
+
+ Determine whether the specified object is equal to the current object
+
+ InventoryBase object to compare against
+ true if objects are the same
+
+
+
+ An Item in Inventory
+
+
+
+ The of this item
+
+
+ The combined of this item
+
+
+ The type of item from
+
+
+ The type of item from the enum
+
+
+ The of the creator of this item
+
+
+ A Description of this item
+
+
+ The s this item is set to or owned by
+
+
+ If true, item is owned by a group
+
+
+ The price this item can be purchased for
+
+
+ The type of sale from the enum
+
+
+ Combined flags from
+
+
+ Time and date this inventory item was created, stored as
+ UTC (Coordinated Universal Time)
+
+
+ Used to update the AssetID in requests sent to the server
+
+
+ The of the previous owner of the item
+
+
+
+ Construct a new InventoryItem object
+
+ The of the item
+
+
+
+ Construct a new InventoryItem object of a specific Type
+
+ The type of item from
+ of the item
+
+
+
+ Indicates inventory item is a link
+
+ True if inventory item is a link to another inventory item
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Generates a number corresponding to the value of the object to support the use of a hash table.
+ Suitable for use in hashing algorithms and data structures such as a hash table
+
+ A Hashcode of all the combined InventoryItem fields
+
+
+
+ Compares an object
+
+ The object to compare
+ true if comparison object matches
+
+
+
+ Determine whether the specified object is equal to the current object
+
+ The object to compare against
+ true if objects are the same
+
+
+
+ Determine whether the specified object is equal to the current object
+
+ The object to compare against
+ true if objects are the same
+
+
+
+ InventoryTexture Class representing a graphical image
+
+
+
+
+
+ Construct an InventoryTexture object
+
+ A which becomes the
+ objects AssetUUID
+
+
+
+ Construct an InventoryTexture object from a serialization stream
+
+
+
+
+ InventorySound Class representing a playable sound
+
+
+
+
+ Construct an InventorySound object
+
+ A which becomes the
+ objects AssetUUID
+
+
+
+ Construct an InventorySound object from a serialization stream
+
+
+
+
+ InventoryCallingCard Class, contains information on another avatar
+
+
+
+
+ Construct an InventoryCallingCard object
+
+ A which becomes the
+ objects AssetUUID
+
+
+
+ Construct an InventoryCallingCard object from a serialization stream
+
+
+
+
+ InventoryLandmark Class, contains details on a specific location
+
+
+
+
+ Construct an InventoryLandmark object
+
+ A which becomes the
+ objects AssetUUID
+
+
+
+ Construct an InventoryLandmark object from a serialization stream
+
+
+
+
+ Landmarks use the InventoryItemFlags struct and will have a flag of 1 set if they have been visited
+
+
+
+
+ InventoryObject Class contains details on a primitive or coalesced set of primitives
+
+
+
+
+ Construct an InventoryObject object
+
+ A which becomes the
+ objects AssetUUID
+
+
+
+ Construct an InventoryObject object from a serialization stream
+
+
+
+
+ Gets or sets the upper byte of the Flags value
+
+
+
+
+ Gets or sets the object attachment point, the lower byte of the Flags value
+
+
+
+
+ InventoryNotecard Class, contains details on an encoded text document
+
+
+
+
+ Construct an InventoryNotecard object
+
+ A which becomes the
+ objects AssetUUID
+
+
+
+ Construct an InventoryNotecard object from a serialization stream
+
+
+
+
+ InventoryCategory Class
+
+ TODO: Is this even used for anything?
+
+
+
+ Construct an InventoryCategory object
+
+ A which becomes the
+ objects AssetUUID
+
+
+
+ Construct an InventoryCategory object from a serialization stream
+
+
+
+
+ InventoryLSL Class, represents a Linden Scripting Language object
+
+
+
+
+ Construct an InventoryLSL object
+
+ A which becomes the
+ objects AssetUUID
+
+
+
+ Construct an InventoryLSL object from a serialization stream
+
+
+
+
+ InventorySnapshot Class, an image taken with the viewer
+
+
+
+
+ Construct an InventorySnapshot object
+
+ A which becomes the
+ objects AssetUUID
+
+
+
+ Construct an InventorySnapshot object from a serialization stream
+
+
+
+
+ InventoryAttachment Class, contains details on an attachable object
+
+
+
+
+ Construct an InventoryAttachment object
+
+ A which becomes the
+ objects AssetUUID
+
+
+
+ Construct an InventoryAttachment object from a serialization stream
+
+
+
+
+ Get the last AttachmentPoint this object was attached to
+
+
+
+
+ InventoryWearable Class, details on a clothing item or body part
+
+
+
+
+ Construct an InventoryWearable object
+
+ A which becomes the
+ objects AssetUUID
+
+
+
+ Construct an InventoryWearable object from a serialization stream
+
+
+
+
+ The , Skin, Shape, Skirt, Etc
+
+
+
+
+ InventoryAnimation Class, A bvh encoded object which animates an avatar
+
+
+
+
+ Construct an InventoryAnimation object
+
+ A which becomes the
+ objects AssetUUID
+
+
+
+ Construct an InventoryAnimation object from a serialization stream
+
+
+
+
+ InventoryGesture Class, details on a series of animations, sounds, and actions
+
+
+
+
+ Construct an InventoryGesture object
+
+ A which becomes the
+ objects AssetUUID
+
+
+
+ Construct an InventoryGesture object from a serialization stream
+
+
+
+
+ A folder contains s and has certain attributes specific
+ to itself
+
+
+
+ The Preferred for a folder.
+
+
+ The Version of this folder
+
+
+ Number of child items this folder contains.
+
+
+
+ Constructor
+
+ UUID of the folder
+
+
+
+
+
+
+
+
+
+ Get Serilization data for this InventoryFolder object
+
+
+
+
+ Construct an InventoryFolder object from a serialization stream
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Tools for dealing with agents inventory
+
+
+
+ Used for converting shadow_id to asset_id
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the ItemReceived Event
+ A ItemReceivedEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the FolderUpdated Event
+ A FolderUpdatedEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the InventoryObjectOffered Event
+ A InventoryObjectOfferedEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the TaskItemReceived Event
+ A TaskItemReceivedEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the FindObjectByPath Event
+ A FindObjectByPathEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the TaskInventoryReply Event
+ A TaskInventoryReplyEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the SaveAssetToInventory Event
+ A SaveAssetToInventoryEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the ScriptRunningReply Event
+ A ScriptRunningReplyEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ Partial mapping of AssetTypes to folder names
+
+
+
+ Default constructor
+
+ Reference to the GridClient object
+
+
+
+ Fetch an inventory item from the dataserver
+
+ The items
+ The item Owners
+ a integer representing the number of milliseconds to wait for results
+ An object on success, or null if no item was found
+ Items will also be sent to the event
+
+
+
+ Request A single inventory item
+
+ The items
+ The item Owners
+
+
+
+
+ Request inventory items
+
+ Inventory items to request
+ Owners of the inventory items
+
+
+
+
+ Get contents of a folder
+
+ The of the folder to search
+ The of the folders owner
+ true to retrieve folders
+ true to retrieve items
+ sort order to return results in
+ a integer representing the number of milliseconds to wait for results
+ A list of inventory items matching search criteria within folder
+
+ InventoryFolder.DescendentCount will only be accurate if both folders and items are
+ requested
+
+
+
+ Request the contents of an inventory folder
+
+ The folder to search
+ The folder owners
+ true to return s contained in folder
+ true to return s containd in folder
+ the sort order to return items in
+
+
+
+
+ Returns the UUID of the folder (category) that defaults to
+ containing 'type'. The folder is not necessarily only for that
+ type
+
+ This will return the root folder if one does not exist
+
+ The UUID of the desired folder if found, the UUID of the RootFolder
+ if not found, or UUID.Zero on failure
+
+
+
+ Find an object in inventory using a specific path to search
+
+ The folder to begin the search in
+ The object owners
+ A string path to search
+ milliseconds to wait for a reply
+ Found items or if
+ timeout occurs or item is not found
+
+
+
+ Find inventory items by path
+
+ The folder to begin the search in
+ The object owners
+ A string path to search, folders/objects separated by a '/'
+ Results are sent to the event
+
+
+
+ Search inventory Store object for an item or folder
+
+ The folder to begin the search in
+ An array which creates a path to search
+ Number of levels below baseFolder to conduct searches
+ if True, will stop searching after first match is found
+ A list of inventory items found
+
+
+
+ Move an inventory item or folder to a new location
+
+ The item or folder to move
+ The to move item or folder to
+
+
+
+ Move an inventory item or folder to a new location and change its name
+
+ The item or folder to move
+ The to move item or folder to
+ The name to change the item or folder to
+
+
+
+ Move and rename a folder
+
+ The source folders
+ The destination folders
+ The name to change the folder to
+
+
+
+ Update folder properties
+
+ of the folder to update
+ Sets folder's parent to
+ Folder name
+ Folder type
+
+
+
+ Move a folder
+
+ The source folders
+ The destination folders
+
+
+
+ Move multiple folders, the keys in the Dictionary parameter,
+ to a new parents, the value of that folder's key.
+
+ A Dictionary containing the
+ of the source as the key, and the
+ of the destination as the value
+
+
+
+ Move an inventory item to a new folder
+
+ The of the source item to move
+ The of the destination folder
+
+
+
+ Move and rename an inventory item
+
+ The of the source item to move
+ The of the destination folder
+ The name to change the folder to
+
+
+
+ Move multiple inventory items to new locations
+
+ A Dictionary containing the
+ of the source item as the key, and the
+ of the destination folder as the value
+
+
+
+ Remove descendants of a folder
+
+ The of the folder
+
+
+
+ Remove a single item from inventory
+
+ The of the inventory item to remove
+
+
+
+ Remove a folder from inventory
+
+ The of the folder to remove
+
+
+
+ Remove multiple items or folders from inventory
+
+ A List containing the s of items to remove
+ A List containing the s of the folders to remove
+
+
+
+ Empty the Lost and Found folder
+
+
+
+
+ Empty the Trash folder
+
+
+
+
+
+
+
+
+
+
+ Proper use is to upload the inventory's asset first, then provide the Asset's TransactionID here.
+
+
+
+
+
+
+
+
+
+
+
+
+ Proper use is to upload the inventory's asset first, then provide the Asset's TransactionID here.
+
+
+
+
+
+
+
+ Creates a new inventory folder
+
+ ID of the folder to put this folder in
+ Name of the folder to create
+ The UUID of the newly created folder
+
+
+
+ Creates a new inventory folder
+
+ ID of the folder to put this folder in
+ Name of the folder to create
+ Sets this folder as the default folder
+ for new assets of the specified type. Use AssetType.Unknown
+ to create a normal folder, otherwise it will likely create a
+ duplicate of an existing folder type
+ The UUID of the newly created folder
+ If you specify a preferred type of AsseType.Folder
+ it will create a new root folder which may likely cause all sorts
+ of strange problems
+
+
+
+ Create an inventory item and upload asset data
+
+ Asset data
+ Inventory item name
+ Inventory item description
+ Asset type
+ Inventory type
+ Put newly created inventory in this folder
+ Delegate that will receive feedback on success or failure
+
+
+
+ Create an inventory item and upload asset data
+
+ Asset data
+ Inventory item name
+ Inventory item description
+ Asset type
+ Inventory type
+ Put newly created inventory in this folder
+ Permission of the newly created item
+ (EveryoneMask, GroupMask, and NextOwnerMask of Permissions struct are supported)
+ Delegate that will receive feedback on success or failure
+
+
+
+ Creates inventory link to another inventory item or folder
+
+ Put newly created link in folder with this UUID
+ Inventory item or folder
+ Method to call upon creation of the link
+
+
+
+ Creates inventory link to another inventory item
+
+ Put newly created link in folder with this UUID
+ Original inventory item
+ Method to call upon creation of the link
+
+
+
+ Creates inventory link to another inventory folder
+
+ Put newly created link in folder with this UUID
+ Original inventory folder
+ Method to call upon creation of the link
+
+
+
+ Creates inventory link to another inventory item or folder
+
+ Put newly created link in folder with this UUID
+ Original item's UUID
+ Name
+ Description
+ Asset Type
+ Inventory Type
+ Transaction UUID
+ Method to call upon creation of the link
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Request a copy of an asset embedded within a notecard
+
+ Usually UUID.Zero for copying an asset from a notecard
+ UUID of the notecard to request an asset from
+ Target folder for asset to go to in your inventory
+ UUID of the embedded asset
+ callback to run when item is copied to inventory
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Save changes to notecard embedded in object contents
+
+ Encoded notecard asset data
+ Notecard UUID
+ Object's UUID
+ Called upon finish of the upload with status information
+
+
+
+ Upload new gesture asset for an inventory gesture item
+
+ Encoded gesture asset
+ Gesture inventory UUID
+ Callback whick will be called when upload is complete
+
+
+
+ Update an existing script in an agents Inventory
+
+ A byte[] array containing the encoded scripts contents
+ the itemID of the script
+ if true, sets the script content to run on the mono interpreter
+
+
+
+
+ Update an existing script in an task Inventory
+
+ A byte[] array containing the encoded scripts contents
+ the itemID of the script
+ UUID of the prim containting the script
+ if true, sets the script content to run on the mono interpreter
+ if true, sets the script to running
+
+
+
+
+ Rez an object from inventory
+
+ Simulator to place object in
+ Rotation of the object when rezzed
+ Vector of where to place object
+ InventoryItem object containing item details
+
+
+
+ Rez an object from inventory
+
+ Simulator to place object in
+ Rotation of the object when rezzed
+ Vector of where to place object
+ InventoryItem object containing item details
+ UUID of group to own the object
+
+
+
+ Rez an object from inventory
+
+ Simulator to place object in
+ Rotation of the object when rezzed
+ Vector of where to place object
+ InventoryItem object containing item details
+ UUID of group to own the object
+ User defined queryID to correlate replies
+ If set to true, the CreateSelected flag
+ will be set on the rezzed object
+
+
+
+ DeRez an object from the simulator to the agents Objects folder in the agents Inventory
+
+ The simulator Local ID of the object
+ If objectLocalID is a child primitive in a linkset, the entire linkset will be derezzed
+
+
+
+ DeRez an object from the simulator and return to inventory
+
+ The simulator Local ID of the object
+ The type of destination from the enum
+ The destination inventory folders -or-
+ if DeRezzing object to a tasks Inventory, the Tasks
+ The transaction ID for this request which
+ can be used to correlate this request with other packets
+ If objectLocalID is a child primitive in a linkset, the entire linkset will be derezzed
+
+
+
+ Rez an item from inventory to its previous simulator location
+
+
+
+
+
+
+
+
+ Give an inventory item to another avatar
+
+ The of the item to give
+ The name of the item
+ The type of the item from the enum
+ The of the recipient
+ true to generate a beameffect during transfer
+
+
+
+ Give an inventory Folder with contents to another avatar
+
+ The of the Folder to give
+ The name of the folder
+ The type of the item from the enum
+ The of the recipient
+ true to generate a beameffect during transfer
+
+
+
+ Copy or move an from agent inventory to a task (primitive) inventory
+
+ The target object
+ The item to copy or move from inventory
+
+ For items with copy permissions a copy of the item is placed in the tasks inventory,
+ for no-copy items the object is moved to the tasks inventory
+
+
+
+ Retrieve a listing of the items contained in a task (Primitive)
+
+ The tasks
+ The tasks simulator local ID
+ milliseconds to wait for reply from simulator
+ A list containing the inventory items inside the task or null
+ if a timeout occurs
+ This request blocks until the response from the simulator arrives
+ or timeoutMS is exceeded
+
+
+
+ Request the contents of a tasks (primitives) inventory from the
+ current simulator
+
+ The LocalID of the object
+
+
+
+
+ Request the contents of a tasks (primitives) inventory
+
+ The simulator Local ID of the object
+ A reference to the simulator object that contains the object
+
+
+
+
+ Move an item from a tasks (Primitive) inventory to the specified folder in the avatars inventory
+
+ LocalID of the object in the simulator
+ UUID of the task item to move
+ The ID of the destination folder in this agents inventory
+ Simulator Object
+ Raises the event
+
+
+
+ Remove an item from an objects (Prim) Inventory
+
+ LocalID of the object in the simulator
+ UUID of the task item to remove
+ Simulator Object
+ You can confirm the removal by comparing the tasks inventory serial before and after the
+ request with the request combined with
+ the event
+
+
+
+ Copy an InventoryScript item from the Agents Inventory into a primitives task inventory
+
+ An unsigned integer representing a primitive being simulated
+ An which represents a script object from the agents inventory
+ true to set the scripts running state to enabled
+ A Unique Transaction ID
+
+ The following example shows the basic steps necessary to copy a script from the agents inventory into a tasks inventory
+ and assumes the script exists in the agents inventory.
+
+ uint primID = 95899503; // Fake prim ID
+ UUID scriptID = UUID.Parse("92a7fe8a-e949-dd39-a8d8-1681d8673232"); // Fake Script UUID in Inventory
+
+ Client.Inventory.FolderContents(Client.Inventory.FindFolderForType(AssetType.LSLText), Client.Self.AgentID,
+ false, true, InventorySortOrder.ByName, 10000);
+
+ Client.Inventory.RezScript(primID, (InventoryItem)Client.Inventory.Store[scriptID]);
+
+
+
+
+
+ Request the running status of a script contained in a task (primitive) inventory
+
+ The ID of the primitive containing the script
+ The ID of the script
+ The event can be used to obtain the results of the
+ request
+
+
+
+
+ Send a request to set the running state of a script contained in a task (primitive) inventory
+
+ The ID of the primitive containing the script
+ The ID of the script
+ true to set the script running, false to stop a running script
+ To verify the change you can use the method combined
+ with the event
+
+
+
+ Create a CRC from an InventoryItem
+
+ The source InventoryItem
+ A uint representing the source InventoryItem as a CRC
+
+
+
+ Reverses a cheesy XORing with a fixed UUID to convert a shadow_id to an asset_id
+
+ Obfuscated shadow_id value
+ Deobfuscated asset_id value
+
+
+
+ Does a cheesy XORing with a fixed UUID to convert an asset_id to a shadow_id
+
+ asset_id value to obfuscate
+ Obfuscated shadow_id value
+
+
+
+ Wrapper for creating a new object
+
+ The type of item from the enum
+ The of the newly created object
+ An object with the type and id passed
+
+
+
+ Parse the results of a RequestTaskInventory() response
+
+ A string which contains the data from the task reply
+ A List containing the items contained within the tasks inventory
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+
+ UpdateCreateInventoryItem packets are received when a new inventory item
+ is created. This may occur when an object that's rezzed in world is
+ taken into inventory, when an item is created using the CreateInventoryItem
+ packet, or when an object is purchased
+
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Raised when the simulator sends us data containing
+ ...
+
+
+ Raised when the simulator sends us data containing
+ ...
+
+
+ Raised when the simulator sends us data containing
+ an inventory object sent by another avatar or primitive
+
+
+ Raised when the simulator sends us data containing
+ ...
+
+
+ Raised when the simulator sends us data containing
+ ...
+
+
+ Raised when the simulator sends us data containing
+ ...
+
+
+ Raised when the simulator sends us data containing
+ ...
+
+
+ Raised when the simulator sends us data containing
+ ...
+
+
+
+ Get this agents Inventory data
+
+
+
+
+ Callback for inventory item creation finishing
+
+ Whether the request to create an inventory
+ item succeeded or not
+ Inventory item being created. If success is
+ false this will be null
+
+
+
+ Callback for an inventory item being create from an uploaded asset
+
+ true if inventory item creation was successful
+
+
+
+
+
+
+
+
+
+
+
+
+ Reply received when uploading an inventory asset
+
+ Has upload been successful
+ Error message if upload failed
+ Inventory asset UUID
+ New asset UUID
+
+
+
+ Delegate that is invoked when script upload is completed
+
+ Has upload succeded (note, there still might be compile errors)
+ Upload status message
+ Is compilation successful
+ If compilation failed, list of error messages, null on compilation success
+ Script inventory UUID
+ Script's new asset UUID
+
+
+ Set to true to accept offer, false to decline it
+
+
+ The folder to accept the inventory into, if null default folder for will be used
+
+
+
+ Callback when an inventory object is accepted and received from a
+ task inventory. This is the callback in which you actually get
+ the ItemID, as in ObjectOfferedCallback it is null when received
+ from a task.
+
+
+
+
+ Avatar group management
+
+
+
+ Key of Group Member
+
+
+ Total land contribution
+
+
+ Online status information
+
+
+ Abilities that the Group Member has
+
+
+ Current group title
+
+
+ Is a group owner
+
+
+
+ Role manager for a group
+
+
+
+ Key of the group
+
+
+ Key of Role
+
+
+ Name of Role
+
+
+ Group Title associated with Role
+
+
+ Description of Role
+
+
+ Abilities Associated with Role
+
+
+ Returns the role's title
+ The role's title
+
+
+
+ Class to represent Group Title
+
+
+
+ Key of the group
+
+
+ ID of the role title belongs to
+
+
+ Group Title
+
+
+ Whether title is Active
+
+
+ Returns group title
+
+
+
+ Represents a group on the grid
+
+
+
+ Key of Group
+
+
+ Key of Group Insignia
+
+
+ Key of Group Founder
+
+
+ Key of Group Role for Owners
+
+
+ Name of Group
+
+
+ Text of Group Charter
+
+
+ Title of "everyone" role
+
+
+ Is the group open for enrolement to everyone
+
+
+ Will group show up in search
+
+
+
+
+
+
+
+
+
+
+
+ Is the group Mature
+
+
+ Cost of group membership
+
+
+
+
+
+
+
+
+ The total number of current members this group has
+
+
+ The number of roles this group has configured
+
+
+ Show this group in agent's profile
+
+
+ Returns the name of the group
+ A string containing the name of the group
+
+
+
+ A group Vote
+
+
+
+ Key of Avatar who created Vote
+
+
+ Text of the Vote proposal
+
+
+ Total number of votes
+
+
+
+ A group proposal
+
+
+
+ The Text of the proposal
+
+
+ The minimum number of members that must vote before proposal passes or failes
+
+
+ The required ration of yes/no votes required for vote to pass
+ The three options are Simple Majority, 2/3 Majority, and Unanimous
+ TODO: this should be an enum
+
+
+ The duration in days votes are accepted
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Struct representing a group notice
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Struct representing a group notice list entry
+
+
+
+ Notice ID
+
+
+ Creation timestamp of notice
+
+
+ Agent name who created notice
+
+
+ Notice subject
+
+
+ Is there an attachment?
+
+
+ Attachment Type
+
+
+
+ Struct representing a member of a group chat session and their settings
+
+
+
+ The of the Avatar
+
+
+ True if user has voice chat enabled
+
+
+ True of Avatar has moderator abilities
+
+
+ True if a moderator has muted this avatars chat
+
+
+ True if a moderator has muted this avatars voice
+
+
+
+ Role update flags
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Can send invitations to groups default role
+
+
+ Can eject members from group
+
+
+ Can toggle 'Open Enrollment' and change 'Signup fee'
+
+
+ Member is visible in the public member list
+
+
+ Can create new roles
+
+
+ Can delete existing roles
+
+
+ Can change Role names, titles and descriptions
+
+
+ Can assign other members to assigners role
+
+
+ Can assign other members to any role
+
+
+ Can remove members from roles
+
+
+ Can assign and remove abilities in roles
+
+
+ Can change group Charter, Insignia, 'Publish on the web' and which
+ members are publicly visible in group member listings
+
+
+ Can buy land or deed land to group
+
+
+ Can abandon group owned land to Governor Linden on mainland, or Estate owner for
+ private estates
+
+
+ Can set land for-sale information on group owned parcels
+
+
+ Can subdivide and join parcels
+
+
+ Can join group chat sessions
+
+
+ Can use voice chat in Group Chat sessions
+
+
+ Can moderate group chat sessions
+
+
+ Can toggle "Show in Find Places" and set search category
+
+
+ Can change parcel name, description, and 'Publish on web' settings
+
+
+ Can set the landing point and teleport routing on group land
+
+
+ Can change music and media settings
+
+
+ Can toggle 'Edit Terrain' option in Land settings
+
+
+ Can toggle various About Land > Options settings
+
+
+ Can always terraform land, even if parcel settings have it turned off
+
+
+ Can always fly while over group owned land
+
+
+ Can always rez objects on group owned land
+
+
+ Can always create landmarks for group owned parcels
+
+
+ Can set home location on any group owned parcel
+
+
+ Can modify public access settings for group owned parcels
+
+
+ Can manager parcel ban lists on group owned land
+
+
+ Can manage pass list sales information
+
+
+ Can eject and freeze other avatars on group owned land
+
+
+ Can return objects set to group
+
+
+ Can return non-group owned/set objects
+
+
+ Can return group owned objects
+
+
+ Can landscape using Linden plants
+
+
+ Can deed objects to group
+
+
+ Can move group owned objects
+
+
+ Can set group owned objects for-sale
+
+
+ Pay group liabilities and receive group dividends
+
+
+ Can send group notices
+
+
+ Can receive group notices
+
+
+ Can create group proposals
+
+
+ Can vote on group proposals
+
+
+
+ Handles all network traffic related to reading and writing group
+ information
+
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the CurrentGroups event
+ A CurrentGroupsEventArgs object containing the
+ data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the GroupNamesReply event
+ A GroupNamesEventArgs object containing the
+ data response from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the GroupProfile event
+ An GroupProfileEventArgs object containing the
+ data returned from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the GroupMembers event
+ A GroupMembersEventArgs object containing the
+ data returned from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the GroupRolesDataReply event
+ A GroupRolesDataReplyEventArgs object containing the
+ data returned from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the GroupRoleMembersReply event
+ A GroupRolesRoleMembersReplyEventArgs object containing the
+ data returned from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the GroupTitlesReply event
+ A GroupTitlesReplyEventArgs object containing the
+ data returned from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the GroupAccountSummary event
+ A GroupAccountSummaryReplyEventArgs object containing the
+ data returned from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the GroupCreated event
+ An GroupCreatedEventArgs object containing the
+ data returned from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the GroupJoined event
+ A GroupOperationEventArgs object containing the
+ result of the operation returned from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the GroupLeft event
+ A GroupOperationEventArgs object containing the
+ result of the operation returned from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the GroupDropped event
+ An GroupDroppedEventArgs object containing the
+ the group your agent left
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the GroupMemberEjected event
+ An GroupMemberEjectedEventArgs object containing the
+ data returned from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the GroupNoticesListReply event
+ An GroupNoticesListReplyEventArgs object containing the
+ data returned from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the GroupInvitation event
+ An GroupInvitationEventArgs object containing the
+ data returned from the simulator
+
+
+ Thread sync lock object
+
+
+ A reference to the current instance
+
+
+ Currently-active group members requests
+
+
+ Currently-active group roles requests
+
+
+ Currently-active group role-member requests
+
+
+ Dictionary keeping group members while request is in progress
+
+
+ Dictionary keeping mebmer/role mapping while request is in progress
+
+
+ Dictionary keeping GroupRole information while request is in progress
+
+
+ Caches group name lookups
+
+
+
+ Construct a new instance of the GroupManager class
+
+ A reference to the current instance
+
+
+
+ Request a current list of groups the avatar is a member of.
+
+ CAPS Event Queue must be running for this to work since the results
+ come across CAPS.
+
+
+
+ Lookup name of group based on groupID
+
+ groupID of group to lookup name for.
+
+
+
+ Request lookup of multiple group names
+
+ List of group IDs to request.
+
+
+ Lookup group profile data such as name, enrollment, founder, logo, etc
+ Subscribe to OnGroupProfile
event to receive the results.
+ group ID (UUID)
+
+
+ Request a list of group members.
+ Subscribe to OnGroupMembers
event to receive the results.
+ group ID (UUID)
+ UUID of the request, use to index into cache
+
+
+ Request group roles
+ Subscribe to OnGroupRoles
event to receive the results.
+ group ID (UUID)
+ UUID of the request, use to index into cache
+
+
+ Request members (members,role) role mapping for a group.
+ Subscribe to OnGroupRolesMembers
event to receive the results.
+ group ID (UUID)
+ UUID of the request, use to index into cache
+
+
+ Request a groups Titles
+ Subscribe to OnGroupTitles
event to receive the results.
+ group ID (UUID)
+ UUID of the request, use to index into cache
+
+
+ Begin to get the group account summary
+ Subscribe to the OnGroupAccountSummary
event to receive the results.
+ group ID (UUID)
+ How long of an interval
+ Which interval (0 for current, 1 for last)
+
+
+ Invites a user to a group
+ The group to invite to
+ A list of roles to invite a person to
+ Key of person to invite
+
+
+ Set a group as the current active group
+ group ID (UUID)
+
+
+ Change the role that determines your active title
+ Group ID to use
+ Role ID to change to
+
+
+ Set this avatar's tier contribution
+ Group ID to change tier in
+ amount of tier to donate
+
+
+
+ Save wheather agent wants to accept group notices and list this group in their profile
+
+ Group
+ Accept notices from this group
+ List this group in the profile
+
+
+ Request to join a group
+ Subscribe to OnGroupJoined
event for confirmation.
+ group ID (UUID) to join.
+
+
+
+ Request to create a new group. If the group is successfully
+ created, L$100 will automatically be deducted
+
+ Subscribe to OnGroupCreated
event to receive confirmation.
+ Group struct containing the new group info
+
+
+ Update a group's profile and other information
+ Groups ID (UUID) to update.
+ Group struct to update.
+
+
+ Eject a user from a group
+ Group ID to eject the user from
+ Avatar's key to eject
+
+
+ Update role information
+ Modified role to be updated
+
+
+ Create a new group role
+ Group ID to update
+ Role to create
+
+
+ Delete a group role
+ Group ID to update
+ Role to delete
+
+
+ Remove an avatar from a role
+ Group ID to update
+ Role ID to be removed from
+ Avatar's Key to remove
+
+
+ Assign an avatar to a role
+ Group ID to update
+ Role ID to assign to
+ Avatar's ID to assign to role
+
+
+ Request the group notices list
+ Group ID to fetch notices for
+
+
+ Request a group notice by key
+ ID of group notice
+
+
+ Send out a group notice
+ Group ID to update
+ GroupNotice
structure containing notice data
+
+
+ Start a group proposal (vote)
+ The Group ID to send proposal to
+ GroupProposal
structure containing the proposal
+
+
+ Request to leave a group
+ Subscribe to OnGroupLeft
event to receive confirmation
+ The group to leave
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Raised when the simulator sends us data containing
+ our current group membership
+
+
+ Raised when the simulator responds to a RequestGroupName
+ or RequestGroupNames request
+
+
+ Raised when the simulator responds to a request
+
+
+ Raised when the simulator responds to a request
+
+
+ Raised when the simulator responds to a request
+
+
+ Raised when the simulator responds to a request
+
+
+ Raised when the simulator responds to a request
+
+
+ Raised when a response to a RequestGroupAccountSummary is returned
+ by the simulator
+
+
+ Raised when a request to create a group is successful
+
+
+ Raised when a request to join a group either
+ fails or succeeds
+
+
+ Raised when a request to leave a group either
+ fails or succeeds
+
+
+ Raised when A group is removed from the group server
+
+
+ Raised when a request to eject a member from a group either
+ fails or succeeds
+
+
+ Raised when the simulator sends us group notices
+
+
+
+ Raised when another agent invites our avatar to join a group
+
+
+ Contains the current groups your agent is a member of
+
+
+ Construct a new instance of the CurrentGroupsEventArgs class
+ The current groups your agent is a member of
+
+
+ Get the current groups your agent is a member of
+
+
+ A Dictionary of group names, where the Key is the groups ID and the value is the groups name
+
+
+ Construct a new instance of the GroupNamesEventArgs class
+ The Group names dictionary
+
+
+ Get the Group Names dictionary
+
+
+ Represents the members of a group
+
+
+
+ Construct a new instance of the GroupMembersReplyEventArgs class
+
+ The ID of the request
+ The ID of the group
+ The membership list of the group
+
+
+ Get the ID as returned by the request to correlate
+ this result set and the request
+
+
+ Get the ID of the group
+
+
+ Get the dictionary of members
+
+
+ Represents the roles associated with a group
+
+
+ Construct a new instance of the GroupRolesDataReplyEventArgs class
+ The ID as returned by the request to correlate
+ this result set and the request
+ The ID of the group
+ The dictionary containing the roles
+
+
+ Get the ID as returned by the request to correlate
+ this result set and the request
+
+
+ Get the ID of the group
+
+
+ Get the dictionary containing the roles
+
+
+ Represents the Role to Member mappings for a group
+
+
+ Construct a new instance of the GroupRolesMembersReplyEventArgs class
+ The ID as returned by the request to correlate
+ this result set and the request
+ The ID of the group
+ The member to roles map
+
+
+ Get the ID as returned by the request to correlate
+ this result set and the request
+
+
+ Get the ID of the group
+
+
+ Get the member to roles map
+
+
+ Represents the titles for a group
+
+
+ Construct a new instance of the GroupTitlesReplyEventArgs class
+ The ID as returned by the request to correlate
+ this result set and the request
+ The ID of the group
+ The titles
+
+
+ Get the ID as returned by the request to correlate
+ this result set and the request
+
+
+ Get the ID of the group
+
+
+ Get the titles
+
+
+ Represents the summary data for a group
+
+
+ Construct a new instance of the GroupAccountSummaryReplyEventArgs class
+ The ID of the group
+ The summary data
+
+
+ Get the ID of the group
+
+
+ Get the summary data
+
+
+ A response to a group create request
+
+
+ Construct a new instance of the GroupCreatedReplyEventArgs class
+ The ID of the group
+ the success or faulure of the request
+ A string containing additional information
+
+
+ Get the ID of the group
+
+
+ true of the group was created successfully
+
+
+ A string containing the message
+
+
+ Represents a response to a request
+
+
+ Construct a new instance of the GroupOperationEventArgs class
+ The ID of the group
+ true of the request was successful
+
+
+ Get the ID of the group
+
+
+ true of the request was successful
+
+
+ Represents your agent leaving a group
+
+
+ Construct a new instance of the GroupDroppedEventArgs class
+ The ID of the group
+
+
+ Get the ID of the group
+
+
+ Represents a list of active group notices
+
+
+ Construct a new instance of the GroupNoticesListReplyEventArgs class
+ The ID of the group
+ The list containing active notices
+
+
+ Get the ID of the group
+
+
+ Get the notices list
+
+
+ Represents the profile of a group
+
+
+ Construct a new instance of the GroupProfileEventArgs class
+ The group profile
+
+
+ Get the group profile
+
+
+
+ Provides notification of a group invitation request sent by another Avatar
+
+ The invitation is raised when another avatar makes an offer for our avatar
+ to join a group.
+
+
+ The ID of the Avatar sending the group invitation
+
+
+ The name of the Avatar sending the group invitation
+
+
+ A message containing the request information which includes
+ the name of the group, the groups charter and the fee to join details
+
+
+ The Simulator
+
+
+ Set to true to accept invitation, false to decline
+
+
+ Describes tasks returned in LandStatReply
+
+
+
+ Estate level administration and utilities
+
+
+
+ Textures for each of the four terrain height levels
+
+
+ Upper/lower texture boundaries for each corner of the sim
+
+
+
+ Constructor for EstateTools class
+
+
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the TopCollidersReply event
+ A TopCollidersReplyEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the TopScriptsReply event
+ A TopScriptsReplyEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the EstateUsersReply event
+ A EstateUsersReplyEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the EstateGroupsReply event
+ A EstateGroupsReplyEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the EstateManagersReply event
+ A EstateManagersReplyEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the EstateBansReply event
+ A EstateBansReplyEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the EstateCovenantReply event
+ A EstateCovenantReplyEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the EstateUpdateInfoReply event
+ A EstateUpdateInfoReplyEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+
+ Requests estate information such as top scripts and colliders
+
+
+
+
+
+
+
+ Requests estate settings, including estate manager and access/ban lists
+
+
+ Requests the "Top Scripts" list for the current region
+
+
+ Requests the "Top Colliders" list for the current region
+
+
+
+ Set several estate specific configuration variables
+
+ The Height of the waterlevel over the entire estate. Defaults to 20
+ The maximum height change allowed above the baked terrain. Defaults to 4
+ The minimum height change allowed below the baked terrain. Defaults to -4
+ true to use
+ if True forces the sun position to the position in SunPosition
+ The current position of the sun on the estate, or when FixedSun is true the static position
+ the sun will remain. 6.0 = Sunrise, 30.0 = Sunset
+
+
+
+ Request return of objects owned by specified avatar
+
+ The Agents owning the primitives to return
+ specify the coverage and type of objects to be included in the return
+ true to perform return on entire estate
+
+
+
+
+
+
+
+
+ Used for setting and retrieving various estate panel settings
+
+ EstateOwnerMessage Method field
+ List of parameters to include
+
+
+
+ Kick an avatar from an estate
+
+ Key of Agent to remove
+
+
+
+ Ban an avatar from an estate
+ Key of Agent to remove
+ Ban user from this estate and all others owned by the estate owner
+
+
+ Unban an avatar from an estate
+ Key of Agent to remove
+ /// Unban user from this estate and all others owned by the estate owner
+
+
+
+ Send a message dialog to everyone in an entire estate
+
+ Message to send all users in the estate
+
+
+
+ Send a message dialog to everyone in a simulator
+
+ Message to send all users in the simulator
+
+
+
+ Send an avatar back to their home location
+
+ Key of avatar to send home
+
+
+
+ Begin the region restart process
+
+
+
+
+ Cancels a region restart
+
+
+
+ Estate panel "Region" tab settings
+
+
+ Estate panel "Debug" tab settings
+
+
+ Used for setting the region's terrain textures for its four height levels
+
+
+
+
+
+
+ Used for setting sim terrain texture heights
+
+
+ Requests the estate covenant
+
+
+
+ Upload a terrain RAW file
+
+ A byte array containing the encoded terrain data
+ The name of the file being uploaded
+ The Id of the transfer request
+
+
+
+ Teleports all users home in current Estate
+
+
+
+
+ Remove estate manager
+ Key of Agent to Remove
+ removes manager to this estate and all others owned by the estate owner
+
+
+
+ Add estate manager
+ Key of Agent to Add
+ Add agent as manager to this estate and all others owned by the estate owner
+
+
+
+ Add's an agent to the estate Allowed list
+ Key of Agent to Add
+ Add agent as an allowed reisdent to All estates if true
+
+
+
+ Removes an agent from the estate Allowed list
+ Key of Agent to Remove
+ Removes agent as an allowed reisdent from All estates if true
+
+
+
+
+ Add's a group to the estate Allowed list
+ Key of Group to Add
+ Add Group as an allowed group to All estates if true
+
+
+
+
+ Removes a group from the estate Allowed list
+ Key of Group to Remove
+ Removes Group as an allowed Group from All estates if true
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Raised when the data server responds to a request.
+
+
+ Raised when the data server responds to a request.
+
+
+ Raised when the data server responds to a request.
+
+
+ Raised when the data server responds to a request.
+
+
+ Raised when the data server responds to a request.
+
+
+ Raised when the data server responds to a request.
+
+
+ Raised when the data server responds to a request.
+
+
+ Raised when the data server responds to a request.
+
+
+ Used in the ReportType field of a LandStatRequest
+
+
+ Used by EstateOwnerMessage packets
+
+
+ Used by EstateOwnerMessage packets
+
+
+
+
+
+
+
+ No flags set
+
+
+ Only return targets scripted objects
+
+
+ Only return targets objects if on others land
+
+
+ Returns target's scripted objects and objects on other parcels
+
+
+ Ground texture settings for each corner of the region
+
+
+ Used by GroundTextureHeightSettings
+
+
+ The high and low texture thresholds for each corner of the sim
+
+
+ Raised on LandStatReply when the report type is for "top colliders"
+
+
+ Construct a new instance of the TopCollidersReplyEventArgs class
+ The number of returned items in LandStatReply
+ Dictionary of Object UUIDs to tasks returned in LandStatReply
+
+
+
+ The number of returned items in LandStatReply
+
+
+
+
+ A Dictionary of Object UUIDs to tasks returned in LandStatReply
+
+
+
+ Raised on LandStatReply when the report type is for "top Scripts"
+
+
+ Construct a new instance of the TopScriptsReplyEventArgs class
+ The number of returned items in LandStatReply
+ Dictionary of Object UUIDs to tasks returned in LandStatReply
+
+
+
+ The number of scripts returned in LandStatReply
+
+
+
+
+ A Dictionary of Object UUIDs to tasks returned in LandStatReply
+
+
+
+ Returned, along with other info, upon a successful .RequestInfo()
+
+
+ Construct a new instance of the EstateBansReplyEventArgs class
+ The estate's identifier on the grid
+ The number of returned items in LandStatReply
+ User UUIDs banned
+
+
+
+ The identifier of the estate
+
+
+
+
+ The number of returned itmes
+
+
+
+
+ List of UUIDs of Banned Users
+
+
+
+ Returned, along with other info, upon a successful .RequestInfo()
+
+
+ Construct a new instance of the EstateUsersReplyEventArgs class
+ The estate's identifier on the grid
+ The number of users
+ Allowed users UUIDs
+
+
+
+ The identifier of the estate
+
+
+
+
+ The number of returned items
+
+
+
+
+ List of UUIDs of Allowed Users
+
+
+
+ Returned, along with other info, upon a successful .RequestInfo()
+
+
+ Construct a new instance of the EstateGroupsReplyEventArgs class
+ The estate's identifier on the grid
+ The number of Groups
+ Allowed Groups UUIDs
+
+
+
+ The identifier of the estate
+
+
+
+
+ The number of returned items
+
+
+
+
+ List of UUIDs of Allowed Groups
+
+
+
+ Returned, along with other info, upon a successful .RequestInfo()
+
+
+ Construct a new instance of the EstateManagersReplyEventArgs class
+ The estate's identifier on the grid
+ The number of Managers
+ Managers UUIDs
+
+
+
+ The identifier of the estate
+
+
+
+
+ The number of returned items
+
+
+
+
+ List of UUIDs of the Estate's Managers
+
+
+
+ Returned, along with other info, upon a successful .RequestInfo()
+
+
+ Construct a new instance of the EstateCovenantReplyEventArgs class
+ The Covenant ID
+ The timestamp
+ The estate's name
+ The Estate Owner's ID (can be a GroupID)
+
+
+
+ The Covenant
+
+
+
+
+ The timestamp
+
+
+
+
+ The Estate name
+
+
+
+
+ The Estate Owner's ID (can be a GroupID)
+
+
+
+ Returned, along with other info, upon a successful .RequestInfo()
+
+
+ Construct a new instance of the EstateUpdateInfoReplyEventArgs class
+ The estate's name
+ The Estate Owners ID (can be a GroupID)
+ The estate's identifier on the grid
+
+
+
+
+ The estate's name
+
+
+
+
+ The Estate Owner's ID (can be a GroupID)
+
+
+
+
+ The identifier of the estate on the grid
+
+
+
+
+
+
+
+ Capabilities is the name of the bi-directional HTTP REST protocol
+ used to communicate non real-time transactions such as teleporting or
+ group messaging
+
+
+
+ Reference to the simulator this system is connected to
+
+
+
+ Default constructor
+
+
+
+
+
+
+ Request the URI of a named capability
+
+ Name of the capability to request
+ The URI of the requested capability, or String.Empty if
+ the capability does not exist
+
+
+
+ Process any incoming events, check to see if we have a message created for the event,
+
+
+
+
+
+ Capabilities URI this system was initialized with
+
+
+ Whether the capabilities event queue is connected and
+ listening for incoming events
+
+
+
+ Triggered when an event is received via the EventQueueGet
+ capability
+
+ Event name
+ Decoded event data
+ The simulator that generated the event
+
+
+
+ Level of Detail mesh
+
+
+
+ =
+
+
+ Number of times we've received an unknown CAPS exception in series.
+
+
+ For exponential backoff on error.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Thrown when a packet could not be successfully deserialized
+
+
+
+
+ Default constructor
+
+
+
+
+ Constructor that takes an additional error message
+
+ An error message to attach to this exception
+
+
+
+ The header of a message template packet. Holds packet flags, sequence
+ number, packet ID, and any ACKs that will be appended at the end of
+ the packet
+
+
+
+
+ Convert the AckList to a byte array, used for packet serializing
+
+ Reference to the target byte array
+ Beginning position to start writing to in the byte
+ array, will be updated with the ending position of the ACK list
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ A block of data in a packet. Packets are composed of one or more blocks,
+ each block containing one or more fields
+
+
+
+
+ Create a block from a byte array
+
+ Byte array containing the serialized block
+ Starting position of the block in the byte array.
+ This will point to the data after the end of the block when the
+ call returns
+
+
+
+ Serialize this block into a byte array
+
+ Byte array to serialize this block into
+ Starting position in the byte array to serialize to.
+ This will point to the position directly after the end of the
+ serialized block when the call returns
+
+
+ Current length of the data in this packet
+
+
+ A generic value, not an actual packet type
+
+
+
+ Attempts to convert an LLSD structure to a known Packet type
+
+ Event name, this must match an actual
+ packet name for a Packet to be successfully built
+ LLSD to convert to a Packet
+ A Packet on success, otherwise null
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ A set of textures that are layered on texture of each other and "baked"
+ in to a single texture, for avatar appearances
+
+
+
+ Final baked texture
+
+
+ Component layers
+
+
+ Width of the final baked image and scratchpad
+
+
+ Height of the final baked image and scratchpad
+
+
+ Bake type
+
+
+
+ Default constructor
+
+ Bake type
+
+
+
+ Adds layer for baking
+
+ TexturaData struct that contains texture and its params
+
+
+
+ Converts avatar texture index (face) to Bake type
+
+ Face number (AvatarTextureIndex)
+ BakeType, layer to which this texture belongs to
+
+
+
+ Make sure images exist, resize source if needed to match the destination
+
+ Destination image
+ Source image
+ Sanitization was succefull
+
+
+
+ Fills a baked layer as a solid *appearing* color. The colors are
+ subtly dithered on a 16x16 grid to prevent the JPEG2000 stage from
+ compressing it too far since it seems to cause upload failures if
+ the image is a pure solid color
+
+ Color of the base of this layer
+
+
+
+ Fills a baked layer as a solid *appearing* color. The colors are
+ subtly dithered on a 16x16 grid to prevent the JPEG2000 stage from
+ compressing it too far since it seems to cause upload failures if
+ the image is a pure solid color
+
+ Red value
+ Green value
+ Blue value
+
+
+ Final baked texture
+
+
+ Component layers
+
+
+ Width of the final baked image and scratchpad
+
+
+ Height of the final baked image and scratchpad
+
+
+ Bake type
+
+
+ Is this one of the 3 skin bakes
+
+
+
+ Singleton logging class for the entire library
+
+
+
+ log4net logging engine
+
+
+
+ Default constructor
+
+
+
+
+ Send a log message to the logging engine
+
+ The log message
+ The severity of the log entry
+
+
+
+ Send a log message to the logging engine
+
+ The log message
+ The severity of the log entry
+ Instance of the client
+
+
+
+ Send a log message to the logging engine
+
+ The log message
+ The severity of the log entry
+ Exception that was raised
+
+
+
+ Send a log message to the logging engine
+
+ The log message
+ The severity of the log entry
+ Instance of the client
+ Exception that was raised
+
+
+
+ If the library is compiled with DEBUG defined, an event will be
+ fired if an OnLogMessage
handler is registered and the
+ message will be sent to the logging engine
+
+ The message to log at the DEBUG level to the
+ current logging engine
+
+
+
+ If the library is compiled with DEBUG defined and
+ GridClient.Settings.DEBUG
is true, an event will be
+ fired if an OnLogMessage
handler is registered and the
+ message will be sent to the logging engine
+
+ The message to log at the DEBUG level to the
+ current logging engine
+ Instance of the client
+
+
+ Triggered whenever a message is logged. If this is left
+ null, log messages will go to the console
+
+
+
+ Callback used for client apps to receive log messages from
+ the library
+
+ Data being logged
+ The severity of the log entry from
+
+
+
+ Main class to expose grid functionality to clients. All of the
+ classes needed for sending and receiving data are accessible through
+ this class.
+
+
+
+ // Example minimum code required to instantiate class and
+ // connect to a simulator.
+ using System;
+ using System.Collections.Generic;
+ using System.Text;
+ using OpenMetaverse;
+
+ namespace FirstBot
+ {
+ class Bot
+ {
+ public static GridClient Client;
+ static void Main(string[] args)
+ {
+ Client = new GridClient(); // instantiates the GridClient class
+ // to the global Client object
+ // Login to Simulator
+ Client.Network.Login("FirstName", "LastName", "Password", "FirstBot", "1.0");
+ // Wait for a Keypress
+ Console.ReadLine();
+ // Logout of simulator
+ Client.Network.Logout();
+ }
+ }
+ }
+
+
+
+
+ Networking subsystem
+
+
+ Settings class including constant values and changeable
+ parameters for everything
+
+
+ Parcel (subdivided simulator lots) subsystem
+
+
+ Our own avatars subsystem
+
+
+ Other avatars subsystem
+
+
+ Estate subsystem
+
+
+ Friends list subsystem
+
+
+ Grid (aka simulator group) subsystem
+
+
+ Object subsystem
+
+
+ Group subsystem
+
+
+ Asset subsystem
+
+
+ Appearance subsystem
+
+
+ Inventory subsystem
+
+
+ Directory searches including classifieds, people, land
+ sales, etc
+
+
+ Handles land, wind, and cloud heightmaps
+
+
+ Handles sound-related networking
+
+
+ Throttling total bandwidth usage, or allocating bandwidth
+ for specific data stream types
+
+
+
+ Default constructor
+
+
+
+
+ Return the full name of this instance
+
+ Client avatars full name
+
+
+
+ Class that handles the local asset cache
+
+
+
+
+ Default constructor
+
+ A reference to the GridClient object
+
+
+
+ Disposes cleanup timer
+
+
+
+
+ Only create timer when needed
+
+
+
+
+ Return bytes read from the local asset cache, null if it does not exist
+
+ UUID of the asset we want to get
+ Raw bytes of the asset, or null on failure
+
+
+
+ Returns ImageDownload object of the
+ image from the local image cache, null if it does not exist
+
+ UUID of the image we want to get
+ ImageDownload object containing the image, or null on failure
+
+
+
+ Constructs a file name of the cached asset
+
+ UUID of the asset
+ String with the file name of the cahced asset
+
+
+
+ Saves an asset to the local cache
+
+ UUID of the asset
+ Raw bytes the asset consists of
+ Weather the operation was successfull
+
+
+
+ Get the file name of the asset stored with gived UUID
+
+ UUID of the asset
+ Null if we don't have that UUID cached on disk, file name if found in the cache folder
+
+
+
+ Checks if the asset exists in the local cache
+
+ UUID of the asset
+ True is the asset is stored in the cache, otherwise false
+
+
+
+ Wipes out entire cache
+
+
+
+
+ Brings cache size to the 90% of the max size
+
+
+
+
+ Asynchronously brings cache size to the 90% of the max size
+
+
+
+
+ Adds up file sizes passes in a FileInfo array
+
+
+
+
+ Checks whether caching is enabled
+
+
+
+
+ Periodically prune the cache
+
+
+
+
+ Nicely formats file sizes
+
+ Byte size we want to output
+ String with humanly readable file size
+
+
+
+ Allows setting weather to periodicale prune the cache if it grows too big
+ Default is enabled, when caching is enabled
+
+
+
+
+ How long (in ms) between cache checks (default is 5 min.)
+
+
+
+
+ Helper class for sorting files by their last accessed time
+
+
+
+
+ Index of TextureEntry slots for avatar appearances
+
+
+
+
+ Bake layers for avatar appearance
+
+
+
+ Maximum number of concurrent downloads for wearable assets and textures
+
+
+ Maximum number of concurrent uploads for baked textures
+
+
+ Timeout for fetching inventory listings
+
+
+ Timeout for fetching a single wearable, or receiving a single packet response
+
+
+ Timeout for fetching a single texture
+
+
+ Timeout for uploading a single baked texture
+
+
+ Number of times to retry bake upload
+
+
+ When changing outfit, kick off rebake after
+ 20 seconds has passed since the last change
+
+
+ Total number of wearables for each avatar
+
+
+ Total number of baked textures on each avatar
+
+
+ Total number of wearables per bake layer
+
+
+ Total number of textures on an avatar, baked or not
+
+
+ Mapping between BakeType and AvatarTextureIndex
+
+
+ Map of what wearables are included in each bake
+
+
+ Magic values to finalize the cache check hashes for each
+ bake
+
+
+ Default avatar texture, used to detect when a custom
+ texture is not set for a face
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the AgentWearablesReply event
+ An AgentWearablesReplyEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the CachedBakesReply event
+ An AgentCachedBakesReplyEventArgs object containing the
+ data returned from the data server AgentCachedTextureResponse
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the AppearanceSet event
+ An AppearanceSetEventArgs object indicating if the operatin was successfull
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the RebakeAvatarRequested event
+ An RebakeAvatarTexturesEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ A cache of wearables currently being worn
+
+
+ A cache of textures currently being worn
+
+
+ Incrementing serial number for AgentCachedTexture packets
+
+
+ Incrementing serial number for AgentSetAppearance packets
+
+
+ Indicates whether or not the appearance thread is currently
+ running, to prevent multiple appearance threads from running
+ simultaneously
+
+
+ Reference to our agent
+
+
+
+ Timer used for delaying rebake on changing outfit
+
+
+
+
+ Main appearance thread
+
+
+
+
+ Default constructor
+
+ A reference to our agent
+
+
+
+ Obsolete method for setting appearance. This function no longer does anything.
+ Use RequestSetAppearance() to manually start the appearance thread
+
+
+
+
+ Obsolete method for setting appearance. This function no longer does anything.
+ Use RequestSetAppearance() to manually start the appearance thread
+
+ Unused parameter
+
+
+
+ Starts the appearance setting thread
+
+
+
+
+ Starts the appearance setting thread
+
+ True to force rebaking, otherwise false
+
+
+
+ Ask the server what textures our agent is currently wearing
+
+
+
+
+ Build hashes out of the texture assetIDs for each baking layer to
+ ask the simulator whether it has cached copies of each baked texture
+
+
+
+
+ Returns the AssetID of the asset that is currently being worn in a
+ given WearableType slot
+
+ WearableType slot to get the AssetID for
+ The UUID of the asset being worn in the given slot, or
+ UUID.Zero if no wearable is attached to the given slot or wearables
+ have not been downloaded yet
+
+
+
+ Add a wearable to the current outfit and set appearance
+
+ Wearable to be added to the outfit
+
+
+
+ Add a list of wearables to the current outfit and set appearance
+
+ List of wearable inventory items to
+ be added to the outfit
+
+
+
+ Remove a wearable from the current outfit and set appearance
+
+ Wearable to be removed from the outfit
+
+
+
+ Removes a list of wearables from the current outfit and set appearance
+
+ List of wearable inventory items to
+ be removed from the outfit
+
+
+
+ Replace the current outfit with a list of wearables and set appearance
+
+ List of wearable inventory items that
+ define a new outfit
+
+
+
+ Checks if an inventory item is currently being worn
+
+ The inventory item to check against the agent
+ wearables
+ The WearableType slot that the item is being worn in,
+ or WearbleType.Invalid if it is not currently being worn
+
+
+
+ Returns a copy of the agents currently worn wearables
+
+ A copy of the agents currently worn wearables
+ Avoid calling this function multiple times as it will make
+ a copy of all of the wearable data each time
+
+
+
+ Calls either or
+ depending on the value of
+ replaceItems
+
+ List of wearable inventory items to add
+ to the outfit or become a new outfit
+ True to replace existing items with the
+ new list of items, false to add these items to the existing outfit
+
+
+
+ Adds a list of attachments to our agent
+
+ A List containing the attachments to add
+ If true, tells simulator to remove existing attachment
+ first
+
+
+
+ Attach an item to our agent at a specific attach point
+
+ A to attach
+ the on the avatar
+ to attach the item to
+
+
+
+ Attach an item to our agent specifying attachment details
+
+ The of the item to attach
+ The attachments owner
+ The name of the attachment
+ The description of the attahment
+ The to apply when attached
+ The of the attachment
+ The on the agent
+ to attach the item to
+
+
+
+ Detach an item from our agent using an object
+
+ An object
+
+
+
+ Detach an item from our agent
+
+ The inventory itemID of the item to detach
+
+
+
+ Inform the sim which wearables are part of our current outfit
+
+
+
+
+ Replaces the Wearables collection with a list of new wearable items
+
+ Wearable items to replace the Wearables collection with
+
+
+
+ Calculates base color/tint for a specific wearable
+ based on its params
+
+ All the color info gathered from wearable's VisualParams
+ passed as list of ColorParamInfo tuples
+ Base color/tint for the wearable
+
+
+
+ Blocking method to populate the Wearables dictionary
+
+ True on success, otherwise false
+
+
+
+ Blocking method to populate the Textures array with cached bakes
+
+ True on success, otherwise false
+
+
+
+ Populates textures and visual params from a decoded asset
+
+ Wearable to decode
+
+
+
+ Blocking method to download and parse currently worn wearable assets
+
+ True on success, otherwise false
+
+
+
+ Get a list of all of the textures that need to be downloaded for a
+ single bake layer
+
+ Bake layer to get texture AssetIDs for
+ A list of texture AssetIDs to download
+
+
+
+ Helper method to lookup the TextureID for a single layer and add it
+ to a list if it is not already present
+
+
+
+
+
+
+ Blocking method to download all of the textures needed for baking
+ the given bake layers
+
+ A list of layers that need baking
+ No return value is given because the baking will happen
+ whether or not all textures are successfully downloaded
+
+
+
+ Blocking method to create and upload baked textures for all of the
+ missing bakes
+
+ True on success, otherwise false
+
+
+
+ Blocking method to create and upload a baked texture for a single
+ bake layer
+
+ Layer to bake
+ True on success, otherwise false
+
+
+
+ Blocking method to upload a baked texture
+
+ Five channel JPEG2000 texture data to upload
+ UUID of the newly created asset on success, otherwise UUID.Zero
+
+
+
+ Creates a dictionary of visual param values from the downloaded wearables
+
+ A dictionary of visual param indices mapping to visual param
+ values for our agent that can be fed to the Baker class
+
+
+
+ Create an AgentSetAppearance packet from Wearables data and the
+ Textures array and send it
+
+
+
+
+ Converts a WearableType to a bodypart or clothing WearableType
+
+ A WearableType
+ AssetType.Bodypart or AssetType.Clothing or AssetType.Unknown
+
+
+
+ Converts a BakeType to the corresponding baked texture slot in AvatarTextureIndex
+
+ A BakeType
+ The AvatarTextureIndex slot that holds the given BakeType
+
+
+
+ Gives the layer number that is used for morph mask
+
+ >A BakeType
+ Which layer number as defined in BakeTypeToTextures is used for morph mask
+
+
+
+ Converts a BakeType to a list of the texture slots that make up that bake
+
+ A BakeType
+ A list of texture slots that are inputs for the given bake
+
+
+ Triggered when an AgentWearablesUpdate packet is received,
+ telling us what our avatar is currently wearing
+ request.
+
+
+ Raised when an AgentCachedTextureResponse packet is
+ received, giving a list of cached bakes that were found on the
+ simulator
+ request.
+
+
+
+ Raised when appearance data is sent to the simulator, also indicates
+ the main appearance thread is finished.
+
+ request.
+
+
+
+ Triggered when the simulator requests the agent rebake its appearance.
+
+
+
+
+
+ Returns true if AppearanceManager is busy and trying to set or change appearance will fail
+
+
+
+
+ Contains information about a wearable inventory item
+
+
+
+ Inventory ItemID of the wearable
+
+
+ AssetID of the wearable asset
+
+
+ WearableType of the wearable
+
+
+ AssetType of the wearable
+
+
+ Asset data for the wearable
+
+
+
+ Data collected from visual params for each wearable
+ needed for the calculation of the color
+
+
+
+
+ Holds a texture assetID and the data needed to bake this layer into
+ an outfit texture. Used to keep track of currently worn textures
+ and baking data
+
+
+
+ A texture AssetID
+
+
+ Asset data for the texture
+
+
+ Collection of alpha masks that needs applying
+
+
+ Tint that should be applied to the texture
+
+
+ Contains the Event data returned from the data server from an AgentWearablesRequest
+
+
+ Construct a new instance of the AgentWearablesReplyEventArgs class
+
+
+ Contains the Event data returned from the data server from an AgentCachedTextureResponse
+
+
+ Construct a new instance of the AgentCachedBakesReplyEventArgs class
+
+
+ Contains the Event data returned from an AppearanceSetRequest
+
+
+
+ Triggered when appearance data is sent to the sim and
+ the main appearance thread is done.
+ Indicates whether appearance setting was successful
+
+
+ Indicates whether appearance setting was successful
+
+
+ Contains the Event data returned from the data server from an RebakeAvatarTextures
+
+
+
+ Triggered when the simulator sends a request for this agent to rebake
+ its appearance
+
+ The ID of the Texture Layer to bake
+
+
+ The ID of the Texture Layer to bake
+
+
+
+ Sent to the client to indicate a teleport request has completed
+
+
+
+
+ Interface requirements for Messaging system
+
+
+
+ The of the agent
+
+
+
+
+
+ The simulators handle the agent teleported to
+
+
+ A Uri which contains a list of Capabilities the simulator supports
+
+
+ Indicates the level of access required
+ to access the simulator, or the content rating, or the simulators
+ map status
+
+
+ The IP Address of the simulator
+
+
+ The UDP Port the simulator will listen for UDP traffic on
+
+
+ Status flags indicating the state of the Agent upon arrival, Flying, etc.
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ Sent to the viewer when a neighboring simulator is requesting the agent make a connection to it.
+
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ A message sent to the client which indicates a teleport request has failed
+ and contains some information on why it failed
+
+
+
+
+
+
+ A string key of the reason the teleport failed e.g. CouldntTPCloser
+ Which could be used to look up a value in a dictionary or enum
+
+
+ The of the Agent
+
+
+ A string human readable message containing the reason
+ An example: Could not teleport closer to destination
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ Contains a list of prim owner information for a specific parcel in a simulator
+
+
+ A Simulator will always return at least 1 entry
+ If agent does not have proper permission the OwnerID will be UUID.Zero
+ If agent does not have proper permission OR there are no primitives on parcel
+ the DataBlocksExtended map will not be sent from the simulator
+
+
+
+ An Array of objects
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ Prim ownership information for a specified owner on a single parcel
+
+
+
+ The of the prim owner,
+ UUID.Zero if agent has no permission to view prim owner information
+
+
+ The total number of prims
+
+
+ True if the OwnerID is a
+
+
+ True if the owner is online
+ This is no longer used by the LL Simulators
+
+
+ The date the most recent prim was rezzed
+
+
+
+ The details of a single parcel in a region, also contains some regionwide globals
+
+
+
+ Simulator-local ID of this parcel
+
+
+ Maximum corner of the axis-aligned bounding box for this
+ parcel
+
+
+ Minimum corner of the axis-aligned bounding box for this
+ parcel
+
+
+ Total parcel land area
+
+
+
+
+
+ Key of authorized buyer
+
+
+ Bitmap describing land layout in 4x4m squares across the
+ entire region
+
+
+
+
+
+ Date land was claimed
+
+
+ Appears to always be zero
+
+
+ Parcel Description
+
+
+
+
+
+
+
+
+ Total number of primitives owned by the parcel group on
+ this parcel
+
+
+ Whether the land is deeded to a group or not
+
+
+
+
+
+ Maximum number of primitives this parcel supports
+
+
+ The Asset UUID of the Texture which when applied to a
+ primitive will display the media
+
+
+ A URL which points to any Quicktime supported media type
+
+
+ A byte, if 0x1 viewer should auto scale media to fit object
+
+
+ URL For Music Stream
+
+
+ Parcel Name
+
+
+ Autoreturn value in minutes for others' objects
+
+
+
+
+
+ Total number of other primitives on this parcel
+
+
+ UUID of the owner of this parcel
+
+
+ Total number of primitives owned by the parcel owner on
+ this parcel
+
+
+
+
+
+ How long is pass valid for
+
+
+ Price for a temporary pass
+
+
+
+
+
+
+
+
+
+
+
+ This field is no longer used
+
+
+ The result of a request for parcel properties
+
+
+ Sale price of the parcel, only useful if ForSale is set
+ The SalePrice will remain the same after an ownership
+ transfer (sale), so it can be used to see the purchase price after
+ a sale if the new owner has not changed it
+
+
+
+ Number of primitives your avatar is currently
+ selecting and sitting on in this parcel
+
+
+
+
+
+
+
+ A number which increments by 1, starting at 0 for each ParcelProperties request.
+ Can be overriden by specifying the sequenceID with the ParcelPropertiesRequest being sent.
+ a Negative number indicates the action in has occurred.
+
+
+
+ Maximum primitives across the entire simulator
+
+
+ Total primitives across the entire simulator
+
+
+
+
+
+ Key of parcel snapshot
+
+
+ Parcel ownership status
+
+
+ Total number of primitives on this parcel
+
+
+
+
+
+
+
+
+ TRUE of region denies access to age unverified users
+
+
+ A description of the media
+
+
+ An Integer which represents the height of the media
+
+
+ An integer which represents the width of the media
+
+
+ A boolean, if true the viewer should loop the media
+
+
+ A string which contains the mime type of the media
+
+
+ true to obscure (hide) media url
+
+
+ true to obscure (hide) music url
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+ A message sent from the viewer to the simulator to updated a specific parcels settings
+
+
+ The of the agent authorized to purchase this
+ parcel of land or a NULL if the sale is authorized to anyone
+
+
+ true to enable auto scaling of the parcel media
+
+
+ The category of this parcel used when search is enabled to restrict
+ search results
+
+
+ A string containing the description to set
+
+
+ The of the which allows for additional
+ powers and restrictions.
+
+
+ The which specifies how avatars which teleport
+ to this parcel are handled
+
+
+ The LocalID of the parcel to update settings on
+
+
+ A string containing the description of the media which can be played
+ to visitors
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+ Base class used for the RemoteParcelRequest message
+
+
+
+ A message sent from the viewer to the simulator to request information
+ on a remote parcel
+
+
+
+ Local sim position of the parcel we are looking up
+
+
+ Region handle of the parcel we are looking up
+
+
+ Region of the parcel we are looking up
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ A message sent from the simulator to the viewer in response to a
+ which will contain parcel information
+
+
+
+ The grid-wide unique parcel ID
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ A message containing a request for a remote parcel from a viewer, or a response
+ from the simulator to that request
+
+
+
+ The request or response details block
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ A message sent from the simulator to an agent which contains
+ the groups the agent is in
+
+
+
+ The Agent receiving the message
+
+
+ An array containing information
+ for each the agent is a member of
+
+
+ An array containing information
+ for each the agent is a member of
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+ Group Details specific to the agent
+
+
+ true of the agent accepts group notices
+
+
+ The agents tier contribution to the group
+
+
+ The Groups
+
+
+ The of the groups insignia
+
+
+ The name of the group
+
+
+ The aggregate permissions the agent has in the group for all roles the agent
+ is assigned
+
+
+ An optional block containing additional agent specific information
+
+
+ true of the agent allows this group to be
+ listed in their profile
+
+
+
+ A message sent from the viewer to the simulator which
+ specifies the language and permissions for others to detect
+ the language specified
+
+
+
+ A string containng the default language
+ to use for the agent
+
+
+ true of others are allowed to
+ know the language setting
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ An EventQueue message sent from the simulator to an agent when the agent
+ leaves a group
+
+
+
+
+ An Array containing the AgentID and GroupID
+
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+ An object containing the Agents UUID, and the Groups UUID
+
+
+ The ID of the Agent leaving the group
+
+
+ The GroupID the Agent is leaving
+
+
+ Base class for Asset uploads/results via Capabilities
+
+
+
+ The request state
+
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ A message sent from the viewer to the simulator to request a temporary upload capability
+ which allows an asset to be uploaded
+
+
+
+ The Capability URL sent by the simulator to upload the baked texture to
+
+
+
+ A message sent from the simulator that will inform the agent the upload is complete,
+ and the UUID of the uploaded asset
+
+
+
+ The uploaded texture asset ID
+
+
+
+ A message sent from the viewer to the simulator to request a temporary
+ capability URI which is used to upload an agents baked appearance textures
+
+
+
+ Object containing request or response
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ A message sent from the simulator which indicates the minimum version required for
+ using voice chat
+
+
+
+ Major Version Required
+
+
+ Minor version required
+
+
+ The name of the region sending the version requrements
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ A message sent from the simulator to the viewer containing the
+ voice server URI
+
+
+
+ The Parcel ID which the voice server URI applies
+
+
+ The name of the region
+
+
+ A uri containing the server/channel information
+ which the viewer can utilize to participate in voice conversations
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ A message sent by the viewer to the simulator to request a temporary
+ capability for a script contained with in a Tasks inventory to be updated
+
+
+
+ Object containing request or response
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ A message sent from the simulator to the viewer to indicate
+ a Tasks scripts status.
+
+
+
+ The Asset ID of the script
+
+
+ True of the script is compiled/ran using the mono interpreter, false indicates it
+ uses the older less efficient lsl2 interprter
+
+
+ The Task containing the scripts
+
+
+ true of the script is in a running state
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ A message containing the request/response used for updating a gesture
+ contained with an agents inventory
+
+
+
+ Object containing request or response
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ A message request/response which is used to update a notecard contained within
+ a tasks inventory
+
+
+
+ The of the Task containing the notecard asset to update
+
+
+ The notecard assets contained in the tasks inventory
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ A reusable class containing a message sent from the viewer to the simulator to request a temporary uploader capability
+ which is used to update an asset in an agents inventory
+
+
+
+
+ The Notecard AssetID to replace
+
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ A message containing the request/response used for updating a notecard
+ contained with an agents inventory
+
+
+
+ Object containing request or response
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ A message sent from the simulator to the viewer which indicates
+ an error occurred while attempting to update a script in an agents or tasks
+ inventory
+
+
+
+ true of the script was successfully compiled by the simulator
+
+
+ A string containing the error which occured while trying
+ to update the script
+
+
+ A new AssetID assigned to the script
+
+
+
+ A message sent from the viewer to the simulator
+ requesting the update of an existing script contained
+ within a tasks inventory
+
+
+
+ if true, set the script mode to running
+
+
+ The scripts InventoryItem ItemID to update
+
+
+ A lowercase string containing either "mono" or "lsl2" which
+ specifies the script is compiled and ran on the mono runtime, or the older
+ lsl runtime
+
+
+ The tasks which contains the script to update
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ A message containing either the request or response used in updating a script inside
+ a tasks inventory
+
+
+
+ Object containing request or response
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ Response from the simulator to notify the viewer the upload is completed, and
+ the UUID of the script asset and its compiled status
+
+
+
+ The uploaded texture asset ID
+
+
+ true of the script was compiled successfully
+
+
+
+ A message sent from a viewer to the simulator requesting a temporary uploader capability
+ used to update a script contained in an agents inventory
+
+
+
+ The existing asset if of the script in the agents inventory to replace
+
+
+ The language of the script
+ Defaults to lsl version 2, "mono" might be another possible option
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ A message containing either the request or response used in updating a script inside
+ an agents inventory
+
+
+
+ Object containing request or response
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+ Base class for Map Layers via Capabilities
+
+
+
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ Sent by an agent to the capabilities server to request map layers
+
+
+
+
+ A message sent from the simulator to the viewer which contains an array of map images and their grid coordinates
+
+
+
+ An array containing LayerData items
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ An object containing map location details
+
+
+
+ The Asset ID of the regions tile overlay
+
+
+ The grid location of the southern border of the map tile
+
+
+ The grid location of the western border of the map tile
+
+
+ The grid location of the eastern border of the map tile
+
+
+ The grid location of the northern border of the map tile
+
+
+ Object containing request or response
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ New as of 1.23 RC1, no details yet.
+
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+ A string containing the method used
+
+
+
+ A request sent from an agent to the Simulator to begin a new conference.
+ Contains a list of Agents which will be included in the conference
+
+
+
+ An array containing the of the agents invited to this conference
+
+
+ The conferences Session ID
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ A moderation request sent from a conference moderator
+ Contains an agent and an optional action to take
+
+
+
+ The Session ID
+
+
+
+
+
+ A list containing Key/Value pairs, known valid values:
+ key: text value: true/false - allow/disallow specified agents ability to use text in session
+ key: voice value: true/false - allow/disallow specified agents ability to use voice in session
+
+ "text" or "voice"
+
+
+
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ A message sent from the agent to the simulator which tells the
+ simulator we've accepted a conference invitation
+
+
+
+ The conference SessionID
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+ Key of sender
+
+
+ Name of sender
+
+
+ Key of destination avatar
+
+
+ ID of originating estate
+
+
+ Key of originating region
+
+
+ Coordinates in originating region
+
+
+ Instant message type
+
+
+ Group IM session toggle
+
+
+ Key of IM session, for Group Messages, the groups UUID
+
+
+ Timestamp of the instant message
+
+
+ Instant message text
+
+
+ Whether this message is held for offline avatars
+
+
+ Context specific packed data
+
+
+ Is this invitation for voice group/conference chat
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ Sent from the simulator to the viewer.
+
+ When an agent initially joins a session the AgentUpdatesBlock object will contain a list of session members including
+ a boolean indicating they can use voice chat in this session, a boolean indicating they are allowed to moderate
+ this session, and lastly a string which indicates another agent is entering the session with the Transition set to "ENTER"
+
+ During the session lifetime updates on individuals are sent. During the update the booleans sent during the initial join are
+ excluded with the exception of the Transition field. This indicates a new user entering or exiting the session with
+ the string "ENTER" or "LEAVE" respectively.
+
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ An EventQueue message sent when the agent is forcibly removed from a chatterbox session
+
+
+
+
+ A string containing the reason the agent was removed
+
+
+
+
+ The ChatterBoxSession's SessionID
+
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+
+
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ A message sent from the viewer to the simulator which
+ specifies that the user has changed current URL
+ of the specific media on a prim face
+
+
+
+
+ New URL
+
+
+
+
+ Prim UUID where navigation occured
+
+
+
+
+ Face index
+
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+ Base class used for the ObjectMedia message
+
+
+
+ Message used to retrive prim media data
+
+
+
+
+ Prim UUID
+
+
+
+
+ Requested operation, either GET or UPDATE
+
+
+
+
+ Serialize object
+
+ Serialized object as OSDMap
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ Message used to update prim media data
+
+
+
+
+ Prim UUID
+
+
+
+
+ Array of media entries indexed by face number
+
+
+
+
+ Media version string
+
+
+
+
+ Serialize object
+
+ Serialized object as OSDMap
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ Message used to update prim media data
+
+
+
+
+ Prim UUID
+
+
+
+
+ Array of media entries indexed by face number
+
+
+
+
+ Requested operation, either GET or UPDATE
+
+
+
+
+ Serialize object
+
+ Serialized object as OSDMap
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+
+ Message for setting or getting per face MediaEntry
+
+
+
+ The request or response details block
+
+
+
+ Serialize the object
+
+ An containing the objects data
+
+
+
+ Deserialize the message
+
+ An containing the data
+
+
+ Details about object resource usage
+
+
+ Object UUID
+
+
+ Object name
+
+
+ Indicates if object is group owned
+
+
+ Locatio of the object
+
+
+ Object owner
+
+
+ Resource usage, keys are resource names, values are resource usage for that specific resource
+
+
+
+ Deserializes object from OSD
+
+ An containing the data
+
+
+
+ Makes an instance based on deserialized data
+
+ serialized data
+ Instance containg deserialized data
+
+
+ Details about parcel resource usage
+
+
+ Parcel UUID
+
+
+ Parcel local ID
+
+
+ Parcel name
+
+
+ Indicates if parcel is group owned
+
+
+ Parcel owner
+
+
+ Array of containing per object resource usage
+
+
+
+ Deserializes object from OSD
+
+ An containing the data
+
+
+
+ Makes an instance based on deserialized data
+
+ serialized data
+ Instance containg deserialized data
+
+
+ Resource usage base class, both agent and parcel resource
+ usage contains summary information
+
+
+ Summary of available resources, keys are resource names,
+ values are resource usage for that specific resource
+
+
+ Summary resource usage, keys are resource names,
+ values are resource usage for that specific resource
+
+
+
+ Serializes object
+
+ serialized data
+
+
+
+ Deserializes object from OSD
+
+ An containing the data
+
+
+ Agent resource usage
+
+
+ Per attachment point object resource usage
+
+
+
+ Deserializes object from OSD
+
+ An containing the data
+
+
+
+ Makes an instance based on deserialized data
+
+ serialized data
+ Instance containg deserialized data
+
+
+
+ Detects which class handles deserialization of this message
+
+ An containing the data
+ Object capable of decoding this message
+
+
+ Request message for parcel resource usage
+
+
+ UUID of the parel to request resource usage info
+
+
+
+ Serializes object
+
+ serialized data
+
+
+
+ Deserializes object from OSD
+
+ An containing the data
+
+
+ Response message for parcel resource usage
+
+
+ URL where parcel resource usage details can be retrieved
+
+
+ URL where parcel resource usage summary can be retrieved
+
+
+
+ Serializes object
+
+ serialized data
+
+
+
+ Deserializes object from OSD
+
+ An containing the data
+
+
+
+ Detects which class handles deserialization of this message
+
+ An containing the data
+ Object capable of decoding this message
+
+
+ Parcel resource usage
+
+
+ Array of containing per percal resource usage
+
+
+
+ Deserializes object from OSD
+
+ An containing the data
+
+
+
+ Access to the data server which allows searching for land, events, people, etc
+
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the EventInfoReply event
+ An EventInfoReplyEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the DirEventsReply event
+ An DirEventsReplyEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the PlacesReply event
+ A PlacesReplyEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the DirPlacesReply event
+ A DirPlacesReplyEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the DirClassifiedsReply event
+ A DirClassifiedsReplyEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the DirGroupsReply event
+ A DirGroupsReplyEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the DirPeopleReply event
+ A DirPeopleReplyEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+ The event subscribers. null if no subcribers
+
+
+ Raises the DirLandReply event
+ A DirLandReplyEventArgs object containing the
+ data returned from the data server
+
+
+ Thread sync lock object
+
+
+
+ Constructs a new instance of the DirectoryManager class
+
+ An instance of GridClient
+
+
+
+ Query the data server for a list of classified ads containing the specified string.
+ Defaults to searching for classified placed in any category, and includes PG, Adult and Mature
+ results.
+
+ Responses are sent 16 per response packet, there is no way to know how many results a query reply will contain however assuming
+ the reply packets arrived ordered, a response with less than 16 entries would indicate all results have been received
+
+ The event is raised when a response is received from the simulator
+
+ A string containing a list of keywords to search for
+ A UUID to correlate the results when the event is raised
+
+
+
+ Query the data server for a list of classified ads which contain specified keywords (Overload)
+
+ The event is raised when a response is received from the simulator
+
+ A string containing a list of keywords to search for
+ The category to search
+ A set of flags which can be ORed to modify query options
+ such as classified maturity rating.
+ A UUID to correlate the results when the event is raised
+
+ Search classified ads containing the key words "foo" and "bar" in the "Any" category that are either PG or Mature
+
+ UUID searchID = StartClassifiedSearch("foo bar", ClassifiedCategories.Any, ClassifiedQueryFlags.PG | ClassifiedQueryFlags.Mature);
+
+
+
+ Responses are sent 16 at a time, there is no way to know how many results a query reply will contain however assuming
+ the reply packets arrived ordered, a response with less than 16 entries would indicate all results have been received
+
+
+
+
+ Starts search for places (Overloaded)
+
+ The event is raised when a response is received from the simulator
+
+ Search text
+ Each request is limited to 100 places
+ being returned. To get the first 100 result entries of a request use 0,
+ from 100-199 use 1, 200-299 use 2, etc.
+ A UUID to correlate the results when the event is raised
+
+
+
+ Queries the dataserver for parcels of land which are flagged to be shown in search
+
+ The event is raised when a response is received from the simulator
+
+ A string containing a list of keywords to search for separated by a space character
+ A set of flags which can be ORed to modify query options
+ such as classified maturity rating.
+ The category to search
+ Each request is limited to 100 places
+ being returned. To get the first 100 result entries of a request use 0,
+ from 100-199 use 1, 200-299 use 2, etc.
+ A UUID to correlate the results when the event is raised
+
+ Search places containing the key words "foo" and "bar" in the "Any" category that are either PG or Adult
+
+ UUID searchID = StartDirPlacesSearch("foo bar", DirFindFlags.DwellSort | DirFindFlags.IncludePG | DirFindFlags.IncludeAdult, ParcelCategory.Any, 0);
+
+
+
+ Additional information on the results can be obtained by using the ParcelManager.InfoRequest method
+
+
+
+
+ Starts a search for land sales using the directory
+
+ The event is raised when a response is received from the simulator
+
+ What type of land to search for. Auction,
+ estate, mainland, "first land", etc
+ The OnDirLandReply event handler must be registered before
+ calling this function. There is no way to determine how many
+ results will be returned, or how many times the callback will be
+ fired other than you won't get more than 100 total parcels from
+ each query.
+
+
+
+ Starts a search for land sales using the directory
+
+ The event is raised when a response is received from the simulator
+
+ What type of land to search for. Auction,
+ estate, mainland, "first land", etc
+ Maximum price to search for
+ Maximum area to search for
+ Each request is limited to 100 parcels
+ being returned. To get the first 100 parcels of a request use 0,
+ from 100-199 use 1, 200-299 use 2, etc.
+ The OnDirLandReply event handler must be registered before
+ calling this function. There is no way to determine how many
+ results will be returned, or how many times the callback will be
+ fired other than you won't get more than 100 total parcels from
+ each query.
+
+
+
+ Send a request to the data server for land sales listings
+
+
+ Flags sent to specify query options
+
+ Available flags:
+ Specify the parcel rating with one or more of the following:
+ IncludePG IncludeMature IncludeAdult
+
+ Specify the field to pre sort the results with ONLY ONE of the following:
+ PerMeterSort NameSort AreaSort PricesSort
+
+ Specify the order the results are returned in, if not specified the results are pre sorted in a Descending Order
+ SortAsc
+
+ Specify additional filters to limit the results with one or both of the following:
+ LimitByPrice LimitByArea
+
+ Flags can be combined by separating them with the | (pipe) character
+
+ Additional details can be found in
+
+ What type of land to search for. Auction,
+ Estate or Mainland
+ Maximum price to search for when the
+ DirFindFlags.LimitByPrice flag is specified in findFlags
+ Maximum area to search for when the
+ DirFindFlags.LimitByArea flag is specified in findFlags
+ Each request is limited to 100 parcels
+ being returned. To get the first 100 parcels of a request use 0,
+ from 100-199 use 100, 200-299 use 200, etc.
+ The event will be raised with the response from the simulator
+
+ There is no way to determine how many results will be returned, or how many times the callback will be
+ fired other than you won't get more than 100 total parcels from
+ each reply.
+
+ Any land set for sale to either anybody or specific to the connected agent will be included in the
+ results if the land is included in the query
+
+
+ // request all mainland, any maturity rating that is larger than 512 sq.m
+ StartLandSearch(DirFindFlags.SortAsc | DirFindFlags.PerMeterSort | DirFindFlags.LimitByArea | DirFindFlags.IncludePG | DirFindFlags.IncludeMature | DirFindFlags.IncludeAdult, SearchTypeFlags.Mainland, 0, 512, 0);
+
+
+
+
+ Search for Groups
+
+ The name or portion of the name of the group you wish to search for
+ Start from the match number
+
+
+
+
+ Search for Groups
+
+ The name or portion of the name of the group you wish to search for
+ Start from the match number
+ Search flags
+
+
+
+
+ Search the People directory for other avatars
+
+ The name or portion of the name of the avatar you wish to search for
+
+
+
+
+
+ Search Places for parcels of land you personally own
+
+
+
+
+ Searches Places for land owned by the specified group
+
+ ID of the group you want to recieve land list for (You must be a member of the group)
+ Transaction (Query) ID which can be associated with results from your request.
+
+
+
+ Search the Places directory for parcels that are listed in search and contain the specified keywords
+
+ A string containing the keywords to search for
+ Transaction (Query) ID which can be associated with results from your request.
+
+
+
+ Search Places - All Options
+
+ One of the Values from the DirFindFlags struct, ie: AgentOwned, GroupOwned, etc.
+ One of the values from the SearchCategory Struct, ie: Any, Linden, Newcomer
+ A string containing a list of keywords to search for separated by a space character
+ String Simulator Name to search in
+ LLUID of group you want to recieve results for
+ Transaction (Query) ID which can be associated with results from your request.
+ Transaction (Query) ID which can be associated with results from your request.
+
+
+
+ Search All Events with specifid searchText in all categories, includes PG, Mature and Adult
+
+ A string containing a list of keywords to search for separated by a space character
+ Each request is limited to 100 entries
+ being returned. To get the first group of entries of a request use 0,
+ from 100-199 use 100, 200-299 use 200, etc.
+ UUID of query to correlate results in callback.
+
+
+
+ Search Events
+
+ A string containing a list of keywords to search for separated by a space character
+ One or more of the following flags: DateEvents, IncludePG, IncludeMature, IncludeAdult
+ from the Enum
+
+ Multiple flags can be combined by separating the flags with the | (pipe) character
+ "u" for in-progress and upcoming events, -or- number of days since/until event is scheduled
+ For example "0" = Today, "1" = tomorrow, "2" = following day, "-1" = yesterday, etc.
+ Each request is limited to 100 entries
+ being returned. To get the first group of entries of a request use 0,
+ from 100-199 use 100, 200-299 use 200, etc.
+ EventCategory event is listed under.
+ UUID of query to correlate results in callback.
+
+
+ Requests Event Details
+ ID of Event returned from the method
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming event message
+ The Unique Capabilities Key
+ The event message containing the data
+ The simulator the message originated from
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming event message
+ The Unique Capabilities Key
+ The event message containing the data
+ The simulator the message originated from
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Raised when the data server responds to a request.
+
+
+ Raised when the data server responds to a request.
+
+
+ Raised when the data server responds to a request.
+
+
+ Raised when the data server responds to a request.
+
+
+ Raised when the data server responds to a request.
+
+
+ Raised when the data server responds to a request.
+
+
+ Raised when the data server responds to a request.
+
+
+ Raised when the data server responds to a request.
+
+
+ Classified Ad categories
+
+
+ Classified is listed in the Any category
+
+
+ Classified is shopping related
+
+
+ Classified is
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Event Categories
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Query Flags used in many of the DirectoryManager methods to specify which query to execute and how to return the results.
+
+ Flags can be combined using the | (pipe) character, not all flags are available in all queries
+
+
+
+ Query the People database
+
+
+
+
+
+
+
+
+ Query the Groups database
+
+
+ Query the Events database
+
+
+ Query the land holdings database for land owned by the currently connected agent
+
+
+
+
+
+ Query the land holdings database for land which is owned by a Group
+
+
+ Specifies the query should pre sort the results based upon traffic
+ when searching the Places database
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Specifies the query should pre sort the results in an ascending order when searching the land sales database.
+ This flag is only used when searching the land sales database
+
+
+ Specifies the query should pre sort the results using the SalePrice field when searching the land sales database.
+ This flag is only used when searching the land sales database
+
+
+ Specifies the query should pre sort the results by calculating the average price/sq.m (SalePrice / Area) when searching the land sales database.
+ This flag is only used when searching the land sales database
+
+
+ Specifies the query should pre sort the results using the ParcelSize field when searching the land sales database.
+ This flag is only used when searching the land sales database
+
+
+ Specifies the query should pre sort the results using the Name field when searching the land sales database.
+ This flag is only used when searching the land sales database
+
+
+ When set, only parcels less than the specified Price will be included when searching the land sales database.
+ This flag is only used when searching the land sales database
+
+
+ When set, only parcels greater than the specified Size will be included when searching the land sales database.
+ This flag is only used when searching the land sales database
+
+
+
+
+
+
+
+
+ Include PG land in results. This flag is used when searching both the Groups, Events and Land sales databases
+
+
+ Include Mature land in results. This flag is used when searching both the Groups, Events and Land sales databases
+
+
+ Include Adult land in results. This flag is used when searching both the Groups, Events and Land sales databases
+
+
+
+
+
+
+ Land types to search dataserver for
+
+
+
+ Search Auction, Mainland and Estate
+
+
+ Land which is currently up for auction
+
+
+ Parcels which are on the mainland (Linden owned) continents
+
+
+ Parcels which are on privately owned simulators
+
+
+
+ The content rating of the event
+
+
+
+ Event is PG
+
+
+ Event is Mature
+
+
+ Event is Adult
+
+
+
+ Classified Ad Options
+
+ There appear to be two formats the flags are packed in.
+ This set of flags is for the newer style
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Classified ad query options
+
+
+
+ Include all ads in results
+
+
+ Include PG ads in results
+
+
+ Include Mature ads in results
+
+
+ Include Adult ads in results
+
+
+
+ The For Sale flag in PlacesReplyData
+
+
+
+ Parcel is not listed for sale
+
+
+ Parcel is For Sale
+
+
+
+ A classified ad on the grid
+
+
+
+ UUID for this ad, useful for looking up detailed
+ information about it
+
+
+ The title of this classified ad
+
+
+ Flags that show certain options applied to the classified
+
+
+ Creation date of the ad
+
+
+ Expiration date of the ad
+
+
+ Price that was paid for this ad
+
+
+ Print the struct data as a string
+ A string containing the field name, and field value
+
+
+
+ A parcel retrieved from the dataserver such as results from the
+ "For-Sale" listings or "Places" Search
+
+
+
+ The unique dataserver parcel ID
+ This id is used to obtain additional information from the entry
+ by using the method
+
+
+ A string containing the name of the parcel
+
+
+ The size of the parcel
+ This field is not returned for Places searches
+
+
+ The price of the parcel
+ This field is not returned for Places searches
+
+
+ If True, this parcel is flagged to be auctioned
+
+
+ If true, this parcel is currently set for sale
+
+
+ Parcel traffic
+
+
+ Print the struct data as a string
+ A string containing the field name, and field value
+
+
+
+ An Avatar returned from the dataserver
+
+
+
+ Online status of agent
+ This field appears to be obsolete and always returns false
+
+
+ The agents first name
+
+
+ The agents last name
+
+
+ The agents
+
+
+ Print the struct data as a string
+ A string containing the field name, and field value
+
+
+
+ Response to a "Groups" Search
+
+
+
+ The Group ID
+
+
+ The name of the group
+
+
+ The current number of members
+
+
+ Print the struct data as a string
+ A string containing the field name, and field value
+
+
+
+ Parcel information returned from a request
+
+ Represents one of the following:
+ A parcel of land on the grid that has its Show In Search flag set
+ A parcel of land owned by the agent making the request
+ A parcel of land owned by a group the agent making the request is a member of
+
+
+ In a request for Group Land, the First record will contain an empty record
+
+ Note: This is not the same as searching the land for sale data source
+
+
+
+ The ID of the Agent of Group that owns the parcel
+
+
+ The name
+
+
+ The description
+
+
+ The Size of the parcel
+
+
+ The billable Size of the parcel, for mainland
+ parcels this will match the ActualArea field. For Group owned land this will be 10 percent smaller
+ than the ActualArea. For Estate land this will always be 0
+
+
+ Indicates the ForSale status of the parcel
+
+
+ The Gridwide X position
+
+
+ The Gridwide Y position
+
+
+ The Z position of the parcel, or 0 if no landing point set
+
+
+ The name of the Region the parcel is located in
+
+
+ The Asset ID of the parcels Snapshot texture
+
+
+ The calculated visitor traffic
+
+
+ The billing product SKU
+ Known values are:
+
+ - 023Mainland / Full Region
+ - 024Estate / Full Region
+ - 027Estate / Openspace
+ - 029Estate / Homestead
+ - 129Mainland / Homestead (Linden Owned)
+
+
+
+
+ No longer used, will always be 0
+
+
+ Get a SL URL for the parcel
+ A string, containing a standard SLURL
+
+
+ Print the struct data as a string
+ A string containing the field name, and field value
+
+
+
+ An "Event" Listing summary
+
+
+
+ The ID of the event creator
+
+
+ The name of the event
+
+
+ The events ID
+
+
+ A string containing the short date/time the event will begin
+
+
+ The event start time in Unixtime (seconds since epoch)
+
+
+ The events maturity rating
+
+
+ Print the struct data as a string
+ A string containing the field name, and field value
+
+
+
+ The details of an "Event"
+
+
+
+ The events ID
+
+
+ The ID of the event creator
+
+
+ The name of the event
+
+
+ The category
+
+
+ The events description
+
+
+ The short date/time the event will begin
+
+
+ The event start time in Unixtime (seconds since epoch) UTC adjusted
+
+
+ The length of the event in minutes
+
+
+ 0 if no cover charge applies
+
+
+ The cover charge amount in L$ if applicable
+
+
+ The name of the region where the event is being held
+
+
+ The gridwide location of the event
+
+
+ The maturity rating
+
+
+ Get a SL URL for the parcel where the event is hosted
+ A string, containing a standard SLURL
+
+
+ Print the struct data as a string
+ A string containing the field name, and field value
+
+
+ Contains the Event data returned from the data server from an EventInfoRequest
+
+
+ Construct a new instance of the EventInfoReplyEventArgs class
+ A single EventInfo object containing the details of an event
+
+
+
+ A single EventInfo object containing the details of an event
+
+
+
+ Contains the "Event" detail data returned from the data server
+
+
+ Construct a new instance of the DirEventsReplyEventArgs class
+ The ID of the query returned by the data server.
+ This will correlate to the ID returned by the method
+ A list containing the "Events" returned by the search query
+
+
+ The ID returned by
+
+
+ A list of "Events" returned by the data server
+
+
+ Contains the "Event" list data returned from the data server
+
+
+ Construct a new instance of PlacesReplyEventArgs class
+ The ID of the query returned by the data server.
+ This will correlate to the ID returned by the method
+ A list containing the "Places" returned by the data server query
+
+
+ The ID returned by
+
+
+ A list of "Places" returned by the data server
+
+
+ Contains the places data returned from the data server
+
+
+ Construct a new instance of the DirPlacesReplyEventArgs class
+ The ID of the query returned by the data server.
+ This will correlate to the ID returned by the method
+ A list containing land data returned by the data server
+
+
+ The ID returned by
+
+
+ A list containing Places data returned by the data server
+
+
+ Contains the classified data returned from the data server
+
+
+ Construct a new instance of the DirClassifiedsReplyEventArgs class
+ A list of classified ad data returned from the data server
+
+
+ A list containing Classified Ads returned by the data server
+
+
+ Contains the group data returned from the data server
+
+
+ Construct a new instance of the DirGroupsReplyEventArgs class
+ The ID of the query returned by the data server.
+ This will correlate to the ID returned by the method
+ A list of groups data returned by the data server
+
+
+ The ID returned by
+
+
+ A list containing Groups data returned by the data server
+
+
+ Contains the people data returned from the data server
+
+
+ Construct a new instance of the DirPeopleReplyEventArgs class
+ The ID of the query returned by the data server.
+ This will correlate to the ID returned by the method
+ A list of people data returned by the data server
+
+
+ The ID returned by
+
+
+ A list containing People data returned by the data server
+
+
+ Contains the land sales data returned from the data server
+
+
+ Construct a new instance of the DirLandReplyEventArgs class
+ A list of parcels for sale returned by the data server
+
+
+ A list containing land forsale data returned by the data server
+
+
+
+ Reads in a byte array of an Animation Asset created by the SecondLife(tm) client.
+
+
+
+
+ Rotation Keyframe count (used internally)
+
+
+
+
+ Position Keyframe count (used internally)
+
+
+
+
+ Animation Priority
+
+
+
+
+ The animation length in seconds.
+
+
+
+
+ Expression set in the client. Null if [None] is selected
+
+
+
+
+ The time in seconds to start the animation
+
+
+
+
+ The time in seconds to end the animation
+
+
+
+
+ Loop the animation
+
+
+
+
+ Meta data. Ease in Seconds.
+
+
+
+
+ Meta data. Ease out seconds.
+
+
+
+
+ Meta Data for the Hand Pose
+
+
+
+
+ Number of joints defined in the animation
+
+
+
+
+ Contains an array of joints
+
+
+
+
+ Searialize an animation asset into it's joints/keyframes/meta data
+
+
+
+
+
+ Variable length strings seem to be null terminated in the animation asset.. but..
+ use with caution, home grown.
+ advances the index.
+
+ The animation asset byte array
+ The offset to start reading
+ a string
+
+
+
+ Read in a Joint from an animation asset byte array
+ Variable length Joint fields, yay!
+ Advances the index
+
+ animation asset byte array
+ Byte Offset of the start of the joint
+ The Joint data serialized into the binBVHJoint structure
+
+
+
+ Read Keyframes of a certain type
+ advance i
+
+ Animation Byte array
+ Offset in the Byte Array. Will be advanced
+ Number of Keyframes
+ Scaling Min to pass to the Uint16ToFloat method
+ Scaling Max to pass to the Uint16ToFloat method
+
+
+
+
+ A Joint and it's associated meta data and keyframes
+
+
+
+
+ Name of the Joint. Matches the avatar_skeleton.xml in client distros
+
+
+
+
+ Joint Animation Override? Was the same as the Priority in testing..
+
+
+
+
+ Array of Rotation Keyframes in order from earliest to latest
+
+
+
+
+ Array of Position Keyframes in order from earliest to latest
+ This seems to only be for the Pelvis?
+
+
+
+
+ A Joint Keyframe. This is either a position or a rotation.
+
+
+
+
+ Either a Vector3 position or a Vector3 Euler rotation
+
+
+
+
+ Poses set in the animation metadata for the hands.
+
+
+
+
+ Capability to load TGAs to Bitmap
+
+
+
+
+ Archives assets
+
+
+
+
+ Archive assets
+
+
+
+
+ Archive the assets given to this archiver to the given archive.
+
+
+
+
+
+ Write an assets metadata file to the given archive
+
+
+
+
+
+ Write asset data files to the given archive
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Static helper functions and global variables
+
+
+
+ This header flag signals that ACKs are appended to the packet
+
+
+ This header flag signals that this packet has been sent before
+
+
+ This header flags signals that an ACK is expected for this packet
+
+
+ This header flag signals that the message is compressed using zerocoding
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Given an X/Y location in absolute (grid-relative) terms, a region
+ handle is returned along with the local X/Y location in that region
+
+ The absolute X location, a number such as
+ 255360.35
+ The absolute Y location, a number such as
+ 255360.35
+ The sim-local X position of the global X
+ position, a value from 0.0 to 256.0
+ The sim-local Y position of the global Y
+ position, a value from 0.0 to 256.0
+ A 64-bit region handle that can be used to teleport to
+
+
+
+ Converts a floating point number to a terse string format used for
+ transmitting numbers in wearable asset files
+
+ Floating point number to convert to a string
+ A terse string representation of the input number
+
+
+
+ Convert a variable length field (byte array) to a string, with a
+ field name prepended to each line of the output
+
+ If the byte array has unprintable characters in it, a
+ hex dump will be written instead
+ The StringBuilder object to write to
+ The byte array to convert to a string
+ A field name to prepend to each line of output
+
+
+
+ Decode a zerocoded byte array, used to decompress packets marked
+ with the zerocoded flag
+
+ Any time a zero is encountered, the next byte is a count
+ of how many zeroes to expand. One zero is encoded with 0x00 0x01,
+ two zeroes is 0x00 0x02, three zeroes is 0x00 0x03, etc. The
+ first four bytes are copied directly to the output buffer.
+
+ The byte array to decode
+ The length of the byte array to decode. This
+ would be the length of the packet up to (but not including) any
+ appended ACKs
+ The output byte array to decode to
+ The length of the output buffer
+
+
+
+ Encode a byte array with zerocoding. Used to compress packets marked
+ with the zerocoded flag. Any zeroes in the array are compressed down
+ to a single zero byte followed by a count of how many zeroes to expand
+ out. A single zero becomes 0x00 0x01, two zeroes becomes 0x00 0x02,
+ three zeroes becomes 0x00 0x03, etc. The first four bytes are copied
+ directly to the output buffer.
+
+ The byte array to encode
+ The length of the byte array to encode
+ The output byte array to encode to
+ The length of the output buffer
+
+
+
+ Calculates the CRC (cyclic redundancy check) needed to upload inventory.
+
+ Creation date
+ Sale type
+ Inventory type
+ Type
+ Asset ID
+ Group ID
+ Sale price
+ Owner ID
+ Creator ID
+ Item ID
+ Folder ID
+ Everyone mask (permissions)
+ Flags
+ Next owner mask (permissions)
+ Group mask (permissions)
+ Owner mask (permissions)
+ The calculated CRC
+
+
+
+ Attempts to load a file embedded in the assembly
+
+ The filename of the resource to load
+ A Stream for the requested file, or null if the resource
+ was not successfully loaded
+
+
+
+ Attempts to load a file either embedded in the assembly or found in
+ a given search path
+
+ The filename of the resource to load
+ An optional path that will be searched if
+ the asset is not found embedded in the assembly
+ A Stream for the requested file, or null if the resource
+ was not successfully loaded
+
+
+
+ Converts a list of primitives to an object that can be serialized
+ with the LLSD system
+
+ Primitives to convert to a serializable object
+ An object that can be serialized with LLSD
+
+
+
+ Deserializes OSD in to a list of primitives
+
+ Structure holding the serialized primitive list,
+ must be of the SDMap type
+ A list of deserialized primitives
+
+
+
+ Converts a struct or class object containing fields only into a key value separated string
+
+ The struct object
+ A string containing the struct fields as the keys, and the field value as the value separated
+
+
+ // Add the following code to any struct or class containing only fields to override the ToString()
+ // method to display the values of the passed object
+
+ /// Print the struct data as a string
+ ///A string containing the field name, and field value
+ public override string ToString()
+ {
+ return Helpers.StructToString(this);
+ }
+
+
+
+
+
+ Passed to Logger.Log() to identify the severity of a log entry
+
+
+
+ No logging information will be output
+
+
+ Non-noisy useful information, may be helpful in
+ debugging a problem
+
+
+ A non-critical error occurred. A warning will not
+ prevent the rest of the library from operating as usual,
+ although it may be indicative of an underlying issue
+
+
+ A critical error has occurred. Generally this will
+ be followed by the network layer shutting down, although the
+ stability of the library after an error is uncertain
+
+
+ Used for internal testing, this logging level can
+ generate very noisy (long and/or repetitive) messages. Don't
+ pass this to the Log() function, use DebugLog() instead.
+
+
+
+
+ Holds group information for Avatars such as those you might find in a profile
+
+
+
+ true of Avatar accepts group notices
+
+
+ Groups Key
+
+
+ Texture Key for groups insignia
+
+
+ Name of the group
+
+
+ Powers avatar has in the group
+
+
+ Avatars Currently selected title
+
+
+ true of Avatar has chosen to list this in their profile
+
+
+
+ Contains an animation currently being played by an agent
+
+
+
+ The ID of the animation asset
+
+
+ A number to indicate start order of currently playing animations
+ On Linden Grids this number is unique per region, with OpenSim it is per client
+
+
+
+
+
+
+ Holds group information on an individual profile pick
+
+
+
+
+ Retrieve friend status notifications, and retrieve avatar names and
+ profiles
+
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the AvatarAnimation Event
+ An AvatarAnimationEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the AvatarAppearance Event
+ A AvatarAppearanceEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the UUIDNameReply Event
+ A UUIDNameReplyEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the AvatarInterestsReply Event
+ A AvatarInterestsReplyEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the AvatarPropertiesReply Event
+ A AvatarPropertiesReplyEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the AvatarGroupsReply Event
+ A AvatarGroupsReplyEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the AvatarPickerReply Event
+ A AvatarPickerReplyEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the ViewerEffectPointAt Event
+ A ViewerEffectPointAtEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the ViewerEffectLookAt Event
+ A ViewerEffectLookAtEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the ViewerEffect Event
+ A ViewerEffectEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the AvatarPicksReply Event
+ A AvatarPicksReplyEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the PickInfoReply Event
+ A PickInfoReplyEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the AvatarClassifiedReply Event
+ A AvatarClassifiedReplyEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+ The event subscribers, null of no subscribers
+
+
+ Raises the ClassifiedInfoReply Event
+ A ClassifiedInfoReplyEventArgs object containing
+ the data sent from the simulator
+
+
+ Thread sync lock object
+
+
+
+ Represents other avatars
+
+
+
+
+ Tracks the specified avatar on your map
+ Avatar ID to track
+
+
+
+ Request a single avatar name
+
+ The avatar key to retrieve a name for
+
+
+
+ Request a list of avatar names
+
+ The avatar keys to retrieve names for
+
+
+
+ Start a request for Avatar Properties
+
+
+
+
+
+ Search for an avatar (first name, last name)
+
+ The name to search for
+ An ID to associate with this query
+
+
+
+ Start a request for Avatar Picks
+
+ UUID of the avatar
+
+
+
+ Start a request for Avatar Classifieds
+
+ UUID of the avatar
+
+
+
+ Start a request for details of a specific profile pick
+
+ UUID of the avatar
+ UUID of the profile pick
+
+
+
+ Start a request for details of a specific profile classified
+
+ UUID of the avatar
+ UUID of the profile classified
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+
+ Crossed region handler for message that comes across the EventQueue. Sent to an agent
+ when the agent crosses a sim border into a new region.
+
+ The message key
+ the IMessage object containing the deserialized data sent from the simulator
+ The which originated the packet
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Raised when the simulator sends us data containing
+ an agents animation playlist
+
+
+ Raised when the simulator sends us data containing
+ the appearance information for an agent
+
+
+ Raised when the simulator sends us data containing
+ agent names/id values
+
+
+ Raised when the simulator sends us data containing
+ the interests listed in an agents profile
+
+
+ Raised when the simulator sends us data containing
+ profile property information for an agent
+
+
+ Raised when the simulator sends us data containing
+ the group membership an agent is a member of
+
+
+ Raised when the simulator sends us data containing
+ name/id pair
+
+
+ Raised when the simulator sends us data containing
+ the objects and effect when an agent is pointing at
+
+
+ Raised when the simulator sends us data containing
+ the objects and effect when an agent is looking at
+
+
+ Raised when the simulator sends us data containing
+ an agents viewer effect information
+
+
+ Raised when the simulator sends us data containing
+ the top picks from an agents profile
+
+
+ Raised when the simulator sends us data containing
+ the Pick details
+
+
+ Raised when the simulator sends us data containing
+ the classified ads an agent has placed
+
+
+ Raised when the simulator sends us data containing
+ the details of a classified ad
+
+
+ Provides data for the event
+ The event occurs when the simulator sends
+ the animation playlist for an agent
+
+ The following code example uses the and
+ properties to display the animation playlist of an avatar on the window.
+
+ // subscribe to the event
+ Client.Avatars.AvatarAnimation += Avatars_AvatarAnimation;
+
+ private void Avatars_AvatarAnimation(object sender, AvatarAnimationEventArgs e)
+ {
+ // create a dictionary of "known" animations from the Animations class using System.Reflection
+ Dictionary<UUID, string> systemAnimations = new Dictionary<UUID, string>();
+ Type type = typeof(Animations);
+ System.Reflection.FieldInfo[] fields = type.GetFields(System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.Static);
+ foreach (System.Reflection.FieldInfo field in fields)
+ {
+ systemAnimations.Add((UUID)field.GetValue(type), field.Name);
+ }
+
+ // find out which animations being played are known animations and which are assets
+ foreach (Animation animation in e.Animations)
+ {
+ if (systemAnimations.ContainsKey(animation.AnimationID))
+ {
+ Console.WriteLine("{0} is playing {1} ({2}) sequence {3}", e.AvatarID,
+ systemAnimations[animation.AnimationID], animation.AnimationSequence);
+ }
+ else
+ {
+ Console.WriteLine("{0} is playing {1} (Asset) sequence {2}", e.AvatarID,
+ animation.AnimationID, animation.AnimationSequence);
+ }
+ }
+ }
+
+
+
+
+
+ Construct a new instance of the AvatarAnimationEventArgs class
+
+ The ID of the agent
+ The list of animations to start
+
+
+ Get the ID of the agent
+
+
+ Get the list of animations to start
+
+
+ Provides data for the event
+ The event occurs when the simulator sends
+ the appearance data for an avatar
+
+ The following code example uses the and
+ properties to display the selected shape of an avatar on the window.
+
+ // subscribe to the event
+ Client.Avatars.AvatarAppearance += Avatars_AvatarAppearance;
+
+ // handle the data when the event is raised
+ void Avatars_AvatarAppearance(object sender, AvatarAppearanceEventArgs e)
+ {
+ Console.WriteLine("The Agent {0} is using a {1} shape.", e.AvatarID, (e.VisualParams[31] > 0) : "male" ? "female")
+ }
+
+
+
+
+
+ Construct a new instance of the AvatarAppearanceEventArgs class
+
+ The simulator request was from
+ The ID of the agent
+ true of the agent is a trial account
+ The default agent texture
+ The agents appearance layer textures
+ The for the agent
+
+
+ Get the Simulator this request is from of the agent
+
+
+ Get the ID of the agent
+
+
+ true if the agent is a trial account
+
+
+ Get the default agent texture
+
+
+ Get the agents appearance layer textures
+
+
+ Get the for the agent
+
+
+ Represents the interests from the profile of an agent
+
+
+ Get the ID of the agent
+
+
+ The properties of an agent
+
+
+ Get the ID of the agent
+
+
+ Get the ID of the agent
+
+
+ Get the ID of the agent
+
+
+ Get the ID of the avatar
+
+
+
+ Abstract base for rendering plugins
+
+
+
+
+ Generates a basic mesh structure from a primitive
+
+ Primitive to generate the mesh from
+ Level of detail to generate the mesh at
+ The generated mesh
+
+
+
+ Generates a a series of faces, each face containing a mesh and
+ metadata
+
+ Primitive to generate the mesh from
+ Level of detail to generate the mesh at
+ The generated mesh
+
+
+
+ Apply texture coordinate modifications from a
+ to a list of vertices
+
+ Vertex list to modify texture coordinates for
+ Center-point of the face
+ Face texture parameters
+
+
+
+ Represents a texture
+
+
+
+ A object containing image data
+
+
+
+
+
+
+
+
+ Initializes a new instance of an AssetTexture object
+
+
+
+ Initializes a new instance of an AssetTexture object
+
+ A unique specific to this asset
+ A byte array containing the raw asset data
+
+
+
+ Initializes a new instance of an AssetTexture object
+
+ A object containing texture data
+
+
+
+ Populates the byte array with a JPEG2000
+ encoded image created from the data in
+
+
+
+
+ Decodes the JPEG2000 data in AssetData
to the
+ object
+
+ True if the decoding was successful, otherwise false
+
+
+
+ Decodes the begin and end byte positions for each quality layer in
+ the image
+
+
+
+
+ Override the base classes AssetType
+
+
+
+ Represents an that represents an avatars body ie: Hair, Etc.
+
+
+
+ Initializes a new instance of an AssetBodyPart object
+
+
+ Initializes a new instance of an AssetBodyPart object with parameters
+ A unique specific to this asset
+ A byte array containing the raw asset data
+
+
+ Initializes a new instance of an AssetBodyPart object with parameters
+ A string representing the values of the Bodypart
+
+
+ Override the base classes AssetType
+
+
+ X position of this patch
+
+
+ Y position of this patch
+
+
+ A 16x16 array of floats holding decompressed layer data
+
+
+
+ Creates a LayerData packet for compressed land data given a full
+ simulator heightmap and an array of indices of patches to compress
+
+ A 256 * 256 array of floating point values
+ specifying the height at each meter in the simulator
+ Array of indexes in the 16x16 grid of patches
+ for this simulator. For example if 1 and 17 are specified, patches
+ x=1,y=0 and x=1,y=1 are sent
+
+
+
+
+ Add a patch of terrain to a BitPacker
+
+ BitPacker to write the patch to
+ Heightmap of the simulator, must be a 256 *
+ 256 float array
+ X offset of the patch to create, valid values are
+ from 0 to 15
+ Y offset of the patch to create, valid values are
+ from 0 to 15
+
+
+
+ Add a custom decoder callback
+
+ The key of the field to decode
+ The custom decode handler
+
+
+
+ Remove a custom decoder callback
+
+ The key of the field to decode
+ The custom decode handler
+
+
+
+ Creates a formatted string containing the values of a Packet
+
+ The Packet
+ A formatted string of values of the nested items in the Packet object
+
+
+
+ Decode an IMessage object into a beautifully formatted string
+
+ The IMessage object
+ Recursion level (used for indenting)
+ A formatted string containing the names and values of the source object
+
+
+
+ A custom decoder callback
+
+ The key of the object
+ the data to decode
+ A string represending the fieldData
+
+
+
+ A Name Value pair with additional settings, used in the protocol
+ primarily to transmit avatar names and active group in object packets
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Constructor that takes all the fields as parameters
+
+
+
+
+
+
+
+
+
+ Constructor that takes a single line from a NameValue field
+
+
+
+
+ Type of the value
+
+
+ Unknown
+
+
+ String value
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Deprecated
+
+
+ String value, but designated as an asset
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Wrapper around a byte array that allows bit to be packed and unpacked
+ one at a time or by a variable amount. Useful for very tightly packed
+ data like LayerData packets
+
+
+
+
+
+
+
+ Default constructor, initialize the bit packer / bit unpacker
+ with a byte array and starting position
+
+ Byte array to pack bits in to or unpack from
+ Starting position in the byte array
+
+
+
+ Pack a floating point value in to the data
+
+ Floating point value to pack
+
+
+
+ Pack part or all of an integer in to the data
+
+ Integer containing the data to pack
+ Number of bits of the integer to pack
+
+
+
+ Pack part or all of an unsigned integer in to the data
+
+ Unsigned integer containing the data to pack
+ Number of bits of the integer to pack
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Unpacking a floating point value from the data
+
+ Unpacked floating point value
+
+
+
+ Unpack a variable number of bits from the data in to integer format
+
+ Number of bits to unpack
+ An integer containing the unpacked bits
+ This function is only useful up to 32 bits
+
+
+
+ Unpack a variable number of bits from the data in to unsigned
+ integer format
+
+ Number of bits to unpack
+ An unsigned integer containing the unpacked bits
+ This function is only useful up to 32 bits
+
+
+
+ Unpack a 16-bit signed integer
+
+ 16-bit signed integer
+
+
+
+ Unpack a 16-bit unsigned integer
+
+ 16-bit unsigned integer
+
+
+
+ Unpack a 32-bit signed integer
+
+ 32-bit signed integer
+
+
+
+ Unpack a 32-bit unsigned integer
+
+ 32-bit unsigned integer
+
+
+
+
+
+
+
+
+
+ Represents a single Voice Session to the Vivox service.
+
+
+
+
+ Close this session.
+
+
+
+
+ Look up an existing Participants in this session
+
+
+
+
+
+
+ A Wrapper around openjpeg to encode and decode images to and from byte arrays
+
+
+
+ TGA Header size
+
+
+ OpenJPEG is not threadsafe, so this object is used to lock
+ during calls into unmanaged code
+
+
+
+ Encode a object into a byte array
+
+ The object to encode
+ true to enable lossless conversion, only useful for small images ie: sculptmaps
+ A byte array containing the encoded Image object
+
+
+
+ Encode a object into a byte array
+
+ The object to encode
+ a byte array of the encoded image
+
+
+
+ Decode JPEG2000 data to an and
+
+
+ JPEG2000 encoded data
+ ManagedImage object to decode to
+ Image object to decode to
+ True if the decode succeeds, otherwise false
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Encode a object into a byte array
+
+ The source object to encode
+ true to enable lossless decoding
+ A byte array containing the source Bitmap object
+
+
+
+ Defines the beginning and ending file positions of a layer in an
+ LRCP-progression JPEG2000 file
+
+
+
+
+ This structure is used to marshal both encoded and decoded images.
+ MUST MATCH THE STRUCT IN dotnet.h!
+
+
+
+
+ Information about a single packet in a JPEG2000 stream
+
+
+
+ Packet start position
+
+
+ Packet header end position
+
+
+ Packet end position
+
+
+
+ Represents a string of characters encoded with specific formatting properties
+
+
+
+ A text string containing main text of the notecard
+
+
+ List of s embedded on the notecard
+
+
+ Construct an Asset of type Notecard
+
+
+
+ Construct an Asset object of type Notecard
+
+ A unique specific to this asset
+ A byte array containing the raw asset data
+
+
+
+ Construct an Asset object of type Notecard
+
+ A text string containing the main body text of the notecard
+
+
+
+ Encode the raw contents of a string with the specific Linden Text properties
+
+
+
+
+ Decode the raw asset data including the Linden Text properties
+
+ true if the AssetData was successfully decoded
+
+
+ Override the base classes AssetType
+
+
+
+
+
+
+
+
+ An instance of DelegateWrapper which calls InvokeWrappedDelegate,
+ which in turn calls the DynamicInvoke method of the wrapped
+ delegate
+
+
+
+
+ Callback used to call EndInvoke on the asynchronously
+ invoked DelegateWrapper
+
+
+
+
+ Executes the specified delegate with the specified arguments
+ asynchronously on a thread pool thread
+
+
+
+
+
+
+ Invokes the wrapped delegate synchronously
+
+
+
+
+
+
+ Calls EndInvoke on the wrapper and Close on the resulting WaitHandle
+ to prevent resource leaks
+
+
+
+
+
+ Delegate to wrap another delegate and its arguments
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ The ObservableDictionary class is used for storing key/value pairs. It has methods for firing
+ events to subscribers when items are added, removed, or changed.
+
+ Key
+ Value
+
+
+
+ A dictionary of callbacks to fire when specified action occurs
+
+
+
+
+ Register a callback to be fired when an action occurs
+
+ The action
+ The callback to fire
+
+
+
+ Unregister a callback
+
+ The action
+ The callback to fire
+
+
+
+
+
+
+
+
+
+ Internal dictionary that this class wraps around. Do not
+ modify or enumerate the contents of this dictionary without locking
+
+
+
+ Initializes a new instance of the Class
+ with the specified key/value, has the default initial capacity.
+
+
+
+ // initialize a new ObservableDictionary named testDict with a string as the key and an int as the value.
+ public ObservableDictionary<string, int> testDict = new ObservableDictionary<string, int>();
+
+
+
+
+
+ Initializes a new instance of the Class
+ with the specified key/value, With its initial capacity specified.
+
+ Initial size of dictionary
+
+
+ // initialize a new ObservableDictionary named testDict with a string as the key and an int as the value,
+ // initially allocated room for 10 entries.
+ public ObservableDictionary<string, int> testDict = new ObservableDictionary<string, int>(10);
+
+
+
+
+
+ Try to get entry from the with specified key
+
+ Key to use for lookup
+ Value returned
+ if specified key exists, if not found
+
+
+ // find your avatar using the Simulator.ObjectsAvatars ObservableDictionary:
+ Avatar av;
+ if (Client.Network.CurrentSim.ObjectsAvatars.TryGetValue(Client.Self.AgentID, out av))
+ Console.WriteLine("Found Avatar {0}", av.Name);
+
+
+
+
+
+
+ Finds the specified match.
+
+ The match.
+ Matched value
+
+
+ // use a delegate to find a prim in the ObjectsPrimitives ObservableDictionary
+ // with the ID 95683496
+ uint findID = 95683496;
+ Primitive findPrim = sim.ObjectsPrimitives.Find(
+ delegate(Primitive prim) { return prim.ID == findID; });
+
+
+
+
+ Find All items in an
+ return matching items.
+ a containing found items.
+
+ Find All prims within 20 meters and store them in a List
+
+ int radius = 20;
+ List<Primitive> prims = Client.Network.CurrentSim.ObjectsPrimitives.FindAll(
+ delegate(Primitive prim) {
+ Vector3 pos = prim.Position;
+ return ((prim.ParentID == 0) && (pos != Vector3.Zero) && (Vector3.Distance(pos, location) < radius));
+ }
+ );
+
+
+
+
+ Find All items in an
+ return matching keys.
+ a containing found keys.
+
+ Find All keys which also exist in another dictionary
+
+ List<UUID> matches = myDict.FindAll(
+ delegate(UUID id) {
+ return myOtherDict.ContainsKey(id);
+ }
+ );
+
+
+
+
+ Check if Key exists in Dictionary
+ Key to check for
+ if found, otherwise
+
+
+ Check if Value exists in Dictionary
+ Value to check for
+ if found, otherwise
+
+
+
+ Adds the specified key to the dictionary, dictionary locking is not performed,
+
+
+ The key
+ The value
+
+
+
+ Removes the specified key, dictionary locking is not performed
+
+ The key.
+ if successful, otherwise
+
+
+
+ Clear the contents of the dictionary
+
+
+
+
+ Enumerator for iterating dictionary entries
+
+
+
+
+
+ Gets the number of Key/Value pairs contained in the
+
+
+
+
+ Indexer for the dictionary
+
+ The key
+ The value
+
+
+ Size of the byte array used to store raw packet data
+
+
+ Raw packet data buffer
+
+
+ Length of the data to transmit
+
+
+ EndPoint of the remote host
+
+
+
+ Create an allocated UDP packet buffer for receiving a packet
+
+
+
+
+ Create an allocated UDP packet buffer for sending a packet
+
+ EndPoint of the remote host
+
+
+
+ Create an allocated UDP packet buffer for sending a packet
+
+ EndPoint of the remote host
+ Size of the buffer to allocate for packet data
+
+
+
+ Object pool for packet buffers. This is used to allocate memory for all
+ incoming and outgoing packets, and zerocoding buffers for those packets
+
+
+
+
+ Creates a new instance of the ObjectPoolBase class. Initialize MUST be called
+ after using this constructor.
+
+
+
+
+ Creates a new instance of the ObjectPool Base class.
+
+ The object pool is composed of segments, which
+ are allocated whenever the size of the pool is exceeded. The number of items
+ in a segment should be large enough that allocating a new segmeng is a rare
+ thing. For example, on a server that will have 10k people logged in at once,
+ the receive buffer object pool should have segment sizes of at least 1000
+ byte arrays per segment.
+
+ The minimun number of segments that may exist.
+ Perform a full GC.Collect whenever a segment is allocated, and then again after allocation to compact the heap.
+ The frequency which segments are checked to see if they're eligible for cleanup.
+
+
+
+ Forces the segment cleanup algorithm to be run. This method is intended
+ primarly for use from the Unit Test libraries.
+
+
+
+
+ Responsible for allocate 1 instance of an object that will be stored in a segment.
+
+ An instance of whatever objec the pool is pooling.
+
+
+
+ Checks in an instance of T owned by the object pool. This method is only intended to be called
+ by the WrappedObject class.
+
+ The segment from which the instance is checked out.
+ The instance of T to check back into the segment.
+
+
+
+ Checks an instance of T from the pool. If the pool is not sufficient to
+ allow the checkout, a new segment is created.
+
+ A WrappedObject around the instance of T. To check
+ the instance back into the segment, be sureto dispose the WrappedObject
+ when finished.
+
+
+
+ The total number of segments created. Intended to be used by the Unit Tests.
+
+
+
+
+ The number of items that are in a segment. Items in a segment
+ are all allocated at the same time, and are hopefully close to
+ each other in the managed heap.
+
+
+
+
+ The minimum number of segments. When segments are reclaimed,
+ this number of segments will always be left alone. These
+ segments are allocated at startup.
+
+
+
+
+ The age a segment must be before it's eligible for cleanup.
+ This is used to prevent thrash, and typical values are in
+ the 5 minute range.
+
+
+
+
+ The frequence which the cleanup thread runs. This is typically
+ expected to be in the 5 minute range.
+
+
+
+
+ Initialize the object pool in client mode
+
+ Server to connect to
+
+
+
+
+
+ Initialize the object pool in server mode
+
+
+
+
+
+
+ Returns a packet buffer with EndPoint set if the buffer is in
+ client mode, or with EndPoint set to null in server mode
+
+ Initialized UDPPacketBuffer object
+
+
+
+ Default constructor
+
+
+
+
+ Check a packet buffer out of the pool
+
+ A packet buffer object
+
+
+
+
+
+ Looking direction, must be a normalized vector
+ Up direction, must be a normalized vector
+
+
+
+ Align the coordinate frame X and Y axis with a given rotation
+ around the Z axis in radians
+
+ Absolute rotation around the Z axis in
+ radians
+
+
+ Origin position of this coordinate frame
+
+
+ X axis of this coordinate frame, or Forward/At in grid terms
+
+
+ Y axis of this coordinate frame, or Left in grid terms
+
+
+ Z axis of this coordinate frame, or Up in grid terms
+
+
+
+ Static pre-defined animations available to all agents
+
+
+
+ Agent with afraid expression on face
+
+
+ Agent aiming a bazooka (right handed)
+
+
+ Agent aiming a bow (left handed)
+
+
+ Agent aiming a hand gun (right handed)
+
+
+ Agent aiming a rifle (right handed)
+
+
+ Agent with angry expression on face
+
+
+ Agent hunched over (away)
+
+
+ Agent doing a backflip
+
+
+ Agent laughing while holding belly
+
+
+ Agent blowing a kiss
+
+
+ Agent with bored expression on face
+
+
+ Agent bowing to audience
+
+
+ Agent brushing himself/herself off
+
+
+ Agent in busy mode
+
+
+ Agent clapping hands
+
+
+ Agent doing a curtsey bow
+
+
+ Agent crouching
+
+
+ Agent crouching while walking
+
+
+ Agent crying
+
+
+ Agent unanimated with arms out (e.g. setting appearance)
+
+
+ Agent re-animated after set appearance finished
+
+
+ Agent dancing
+
+
+ Agent dancing
+
+
+ Agent dancing
+
+
+ Agent dancing
+
+
+ Agent dancing
+
+
+ Agent dancing
+
+
+ Agent dancing
+
+
+ Agent dancing
+
+
+ Agent on ground unanimated
+
+
+ Agent boozing it up
+
+
+ Agent with embarassed expression on face
+
+
+ Agent with afraid expression on face
+
+
+ Agent with angry expression on face
+
+
+ Agent with bored expression on face
+
+
+ Agent crying
+
+
+ Agent showing disdain (dislike) for something
+
+
+ Agent with embarassed expression on face
+
+
+ Agent with frowning expression on face
+
+
+ Agent with kissy face
+
+
+ Agent expressing laughgter
+
+
+ Agent with open mouth
+
+
+ Agent with repulsed expression on face
+
+
+ Agent expressing sadness
+
+
+ Agent shrugging shoulders
+
+
+ Agent with a smile
+
+
+ Agent expressing surprise
+
+
+ Agent sticking tongue out
+
+
+ Agent with big toothy smile
+
+
+ Agent winking
+
+
+ Agent expressing worry
+
+
+ Agent falling down
+
+
+ Agent walking (feminine version)
+
+
+ Agent wagging finger (disapproval)
+
+
+ I'm not sure I want to know
+
+
+ Agent in superman position
+
+
+ Agent in superman position
+
+
+ Agent greeting another
+
+
+ Agent holding bazooka (right handed)
+
+
+ Agent holding a bow (left handed)
+
+
+ Agent holding a handgun (right handed)
+
+
+ Agent holding a rifle (right handed)
+
+
+ Agent throwing an object (right handed)
+
+
+ Agent in static hover
+
+
+ Agent hovering downward
+
+
+ Agent hovering upward
+
+
+ Agent being impatient
+
+
+ Agent jumping
+
+
+ Agent jumping with fervor
+
+
+ Agent point to lips then rear end
+
+
+ Agent landing from jump, finished flight, etc
+
+
+ Agent laughing
+
+
+ Agent landing from jump, finished flight, etc
+
+
+ Agent sitting on a motorcycle
+
+
+
+
+
+ Agent moving head side to side
+
+
+ Agent moving head side to side with unhappy expression
+
+
+ Agent taunting another
+
+
+
+
+
+ Agent giving peace sign
+
+
+ Agent pointing at self
+
+
+ Agent pointing at another
+
+
+ Agent preparing for jump (bending knees)
+
+
+ Agent punching with left hand
+
+
+ Agent punching with right hand
+
+
+ Agent acting repulsed
+
+
+ Agent trying to be Chuck Norris
+
+
+ Rocks, Paper, Scissors 1, 2, 3
+
+
+ Agent with hand flat over other hand
+
+
+ Agent with fist over other hand
+
+
+ Agent with two fingers spread over other hand
+
+
+ Agent running
+
+
+ Agent appearing sad
+
+
+ Agent saluting
+
+
+ Agent shooting bow (left handed)
+
+
+ Agent cupping mouth as if shouting
+
+
+ Agent shrugging shoulders
+
+
+ Agent in sit position
+
+
+ Agent in sit position (feminine)
+
+
+ Agent in sit position (generic)
+
+
+ Agent sitting on ground
+
+
+ Agent sitting on ground
+
+
+
+
+
+ Agent sleeping on side
+
+
+ Agent smoking
+
+
+ Agent inhaling smoke
+
+
+
+
+
+ Agent taking a picture
+
+
+ Agent standing
+
+
+ Agent standing up
+
+
+ Agent standing
+
+
+ Agent standing
+
+
+ Agent standing
+
+
+ Agent standing
+
+
+ Agent stretching
+
+
+ Agent in stride (fast walk)
+
+
+ Agent surfing
+
+
+ Agent acting surprised
+
+
+ Agent striking with a sword
+
+
+ Agent talking (lips moving)
+
+
+ Agent throwing a tantrum
+
+
+ Agent throwing an object (right handed)
+
+
+ Agent trying on a shirt
+
+
+ Agent turning to the left
+
+
+ Agent turning to the right
+
+
+ Agent typing
+
+
+ Agent walking
+
+
+ Agent whispering
+
+
+ Agent whispering with fingers in mouth
+
+
+ Agent winking
+
+
+ Agent winking
+
+
+ Agent worried
+
+
+ Agent nodding yes
+
+
+ Agent nodding yes with happy face
+
+
+ Agent floating with legs and arms crossed
+
+
+
+ A dictionary containing all pre-defined animations
+
+ A dictionary containing the pre-defined animations,
+ where the key is the animations ID, and the value is a string
+ containing a name to identify the purpose of the animation
+
+
+
+ Throttles the network traffic for various different traffic types.
+ Access this class through GridClient.Throttle
+
+
+
+
+ Default constructor, uses a default high total of 1500 KBps (1536000)
+
+
+
+
+ Constructor that decodes an existing AgentThrottle packet in to
+ individual values
+
+ Reference to the throttle data in an AgentThrottle
+ packet
+ Offset position to start reading at in the
+ throttle data
+ This is generally not needed in clients as the server will
+ never send a throttle packet to the client
+
+
+
+ Send an AgentThrottle packet to the current server using the
+ current values
+
+
+
+
+ Send an AgentThrottle packet to the specified server using the
+ current values
+
+
+
+
+ Convert the current throttle values to a byte array that can be put
+ in an AgentThrottle packet
+
+ Byte array containing all the throttle values
+
+
+ Maximum bits per second for resending unacknowledged packets
+
+
+ Maximum bits per second for LayerData terrain
+
+
+ Maximum bits per second for LayerData wind data
+
+
+ Maximum bits per second for LayerData clouds
+
+
+ Unknown, includes object data
+
+
+ Maximum bits per second for textures
+
+
+ Maximum bits per second for downloaded assets
+
+
+ Maximum bits per second the entire connection, divided up
+ between invidiual streams using default multipliers
+
+
+
+ Constants for the archiving module
+
+
+
+
+ The location of the archive control file
+
+
+
+
+ Path for the assets held in an archive
+
+
+
+
+ Path for the prims file
+
+
+
+
+ Path for terrains. Technically these may be assets, but I think it's quite nice to split them out.
+
+
+
+
+ Path for region settings.
+
+
+
+
+ The character the separates the uuid from extension information in an archived asset filename
+
+
+
+
+ Extensions used for asset types in the archive
+
+
+
+
+ Checks the instance back into the object pool
+
+
+
+
+ Returns an instance of the class that has been checked out of the Object Pool.
+
+
+
+
+ Class for controlling various system settings.
+
+ Some values are readonly because they affect things that
+ happen when the GridClient object is initialized, so changing them at
+ runtime won't do any good. Non-readonly values may affect things that
+ happen at login or dynamically
+
+
+ Main grid login server
+
+
+ Beta grid login server
+
+
+
+ InventoryManager requests inventory information on login,
+ GridClient initializes an Inventory store for main inventory.
+
+
+
+
+ InventoryManager requests library information on login,
+ GridClient initializes an Inventory store for the library.
+
+
+
+ Number of milliseconds between sending pings to each sim
+
+
+ Number of milliseconds between sending camera updates
+
+
+ Number of milliseconds between updating the current
+ positions of moving, non-accelerating and non-colliding objects
+
+
+ Millisecond interval between ticks, where all ACKs are
+ sent out and the age of unACKed packets is checked
+
+
+ The initial size of the packet inbox, where packets are
+ stored before processing
+
+
+ Maximum size of packet that we want to send over the wire
+
+
+ The maximum value of a packet sequence number before it
+ rolls over back to one
+
+
+ The maximum size of the sequence number archive, used to
+ check for resent and/or duplicate packets
+
+
+ The relative directory where external resources are kept
+
+
+ Login server to connect to
+
+
+ IP Address the client will bind to
+
+
+ Use XML-RPC Login or LLSD Login, default is XML-RPC Login
+
+
+ Number of milliseconds before an asset transfer will time
+ out
+
+
+ Number of milliseconds before a teleport attempt will time
+ out
+
+
+ Number of milliseconds before NetworkManager.Logout() will
+ time out
+
+
+ Number of milliseconds before a CAPS call will time out
+ Setting this too low will cause web requests time out and
+ possibly retry repeatedly
+
+
+ Number of milliseconds for xml-rpc to timeout
+
+
+ Milliseconds before a packet is assumed lost and resent
+
+
+ Milliseconds without receiving a packet before the
+ connection to a simulator is assumed lost
+
+
+ Milliseconds to wait for a simulator info request through
+ the grid interface
+
+
+ Maximum number of queued ACKs to be sent before SendAcks()
+ is forced
+
+
+ Network stats queue length (seconds)
+
+
+ Enable to process packets synchronously, where all of the
+ callbacks for each packet must return before the next packet is
+ processed
+ This is an experimental feature and is not completely
+ reliable yet. Ideally it would reduce context switches and thread
+ overhead, but several calls currently block for a long time and
+ would need to be rewritten as asynchronous code before this is
+ feasible
+
+
+ Enable/disable storing terrain heightmaps in the
+ TerrainManager
+
+
+ Enable/disable sending periodic camera updates
+
+
+ Enable/disable automatically setting agent appearance at
+ login and after sim crossing
+
+
+ Enable/disable automatically setting the bandwidth throttle
+ after connecting to each simulator
+ The default throttle uses the equivalent of the maximum
+ bandwidth setting in the official client. If you do not set a
+ throttle your connection will by default be throttled well below
+ the minimum values and you may experience connection problems
+
+
+ Enable/disable the sending of pings to monitor lag and
+ packet loss
+
+
+ Should we connect to multiple sims? This will allow
+ viewing in to neighboring simulators and sim crossings
+ (Experimental)
+
+
+ If true, all object update packets will be decoded in to
+ native objects. If false, only updates for our own agent will be
+ decoded. Registering an event handler will force objects for that
+ type to always be decoded. If this is disabled the object tracking
+ will have missing or partial prim and avatar information
+
+
+ If true, when a cached object check is received from the
+ server the full object info will automatically be requested
+
+
+ Whether to establish connections to HTTP capabilities
+ servers for simulators
+
+
+ Whether to decode sim stats
+
+
+ The capabilities servers are currently designed to
+ periodically return a 502 error which signals for the client to
+ re-establish a connection. Set this to true to log those 502 errors
+
+
+ If true, any reference received for a folder or item
+ the library is not aware of will automatically be fetched
+
+
+ If true, and SEND_AGENT_UPDATES
is true,
+ AgentUpdate packets will continuously be sent out to give the bot
+ smoother movement and autopiloting
+
+
+ If true, currently visible avatars will be stored
+ in dictionaries inside Simulator.ObjectAvatars
.
+ If false, a new Avatar or Primitive object will be created
+ each time an object update packet is received
+
+
+ If true, currently visible avatars will be stored
+ in dictionaries inside Simulator.ObjectPrimitives
.
+ If false, a new Avatar or Primitive object will be created
+ each time an object update packet is received
+
+
+ If true, position and velocity will periodically be
+ interpolated (extrapolated, technically) for objects and
+ avatars that are being tracked by the library. This is
+ necessary to increase the accuracy of speed and position
+ estimates for simulated objects
+
+
+
+ If true, utilization statistics will be tracked. There is a minor penalty
+ in CPU time for enabling this option.
+
+
+
+ If true, parcel details will be stored in the
+ Simulator.Parcels
dictionary as they are received
+
+
+
+ If true, an incoming parcel properties reply will automatically send
+ a request for the parcel access list
+
+
+
+
+ if true, an incoming parcel properties reply will automatically send
+ a request for the traffic count.
+
+
+
+
+ If true, images, and other assets downloaded from the server
+ will be cached in a local directory
+
+
+
+ Path to store cached texture data
+
+
+ Maximum size cached files are allowed to take on disk (bytes)
+
+
+ Default color used for viewer particle effects
+
+
+ Maximum number of times to resend a failed packet
+
+
+ Throttle outgoing packet rate
+
+
+ UUID of a texture used by some viewers to indentify type of client used
+
+
+ The maximum number of concurrent texture downloads allowed
+ Increasing this number will not necessarily increase texture retrieval times due to
+ simulator throttles
+
+
+
+ The Refresh timer inteval is used to set the delay between checks for stalled texture downloads
+
+ This is a static variable which applies to all instances
+
+
+
+ Textures taking longer than this value will be flagged as timed out and removed from the pipeline
+
+
+
+
+ Get or set the minimum log level to output to the console by default
+
+ If the library is not compiled with DEBUG defined and this level is set to DEBUG
+ You will get no output on the console. This behavior can be overriden by creating
+ a logger configuration file for log4net
+
+
+
+ Attach avatar names to log messages
+
+
+ Log packet retransmission info
+
+
+ Constructor
+ Reference to a GridClient object
+
+
+ Process an incoming packet and raise the appropriate events
+ The sender
+ The EventArgs object containing the packet data
+
+
+ Cost of uploading an asset
+ Read-only since this value is dynamically fetched at login
+
+
+
+ Registers, unregisters, and fires events generated by incoming packets
+
+
+
+ Reference to the GridClient object
+
+
+
+ Default constructor
+
+
+
+
+
+ Register an event handler
+
+ Use PacketType.Default to fire this event on every
+ incoming packet
+ Packet type to register the handler for
+ Callback to be fired
+
+
+
+ Unregister an event handler
+
+ Packet type to unregister the handler for
+ Callback to be unregistered
+
+
+
+ Fire the events registered for this packet type synchronously
+
+ Incoming packet type
+ Incoming packet
+ Simulator this packet was received from
+
+
+
+ Fire the events registered for this packet type asynchronously
+
+ Incoming packet type
+ Incoming packet
+ Simulator this packet was received from
+
+
+
+ Object that is passed to worker threads in the ThreadPool for
+ firing packet callbacks
+
+
+
+ Callback to fire for this packet
+
+
+ Reference to the simulator that this packet came from
+
+
+ The packet that needs to be processed
+
+
+
+ Registers, unregisters, and fires events generated by the Capabilities
+ event queue
+
+
+
+ Reference to the GridClient object
+
+
+
+ Default constructor
+
+ Reference to the GridClient object
+
+
+
+ Register an new event handler for a capabilities event sent via the EventQueue
+
+ Use String.Empty to fire this event on every CAPS event
+ Capability event name to register the
+ handler for
+ Callback to fire
+
+
+
+ Unregister a previously registered capabilities handler
+
+ Capability event name unregister the
+ handler for
+ Callback to unregister
+
+
+
+ Fire the events registered for this event type synchronously
+
+ Capability name
+ Decoded event body
+ Reference to the simulator that
+ generated this event
+
+
+
+ Fire the events registered for this event type asynchronously
+
+ Capability name
+ Decoded event body
+ Reference to the simulator that
+ generated this event
+
+
+
+ Object that is passed to worker threads in the ThreadPool for
+ firing CAPS callbacks
+
+
+
+ Callback to fire for this packet
+
+
+ Name of the CAPS event
+
+
+ Strongly typed decoded data
+
+
+ Reference to the simulator that generated this event
+
+
+
diff --git a/bin/OpenMetaverse.dll b/bin/OpenMetaverse.dll
index 59e39bbf60..987a4490a3 100644
Binary files a/bin/OpenMetaverse.dll and b/bin/OpenMetaverse.dll differ
diff --git a/bin/OpenMetaverse.dll.config b/bin/OpenMetaverse.dll.config
index 13fdc11c72..dc36a4513f 100644
--- a/bin/OpenMetaverse.dll.config
+++ b/bin/OpenMetaverse.dll.config
@@ -1,7 +1,7 @@
-
-
-
-
-
-
-
+
+
+
+
+
+
+
diff --git a/bin/OpenMetaverseTypes.XML b/bin/OpenMetaverseTypes.XML
index 3903aea866..137b39ba47 100644
--- a/bin/OpenMetaverseTypes.XML
+++ b/bin/OpenMetaverseTypes.XML
@@ -1,1957 +1,2596 @@
-
-
-
- OpenMetaverseTypes
-
-
-
-
- A hierarchical token bucket for bandwidth throttling. See
- http://en.wikipedia.org/wiki/Token_bucket for more information
-
-
-
- Parent bucket to this bucket, or null if this is a root
- bucket
-
-
- Size of the bucket in bytes. If zero, the bucket has
- infinite capacity
-
-
- Rate that the bucket fills, in bytes per millisecond. If
- zero, the bucket always remains full
-
-
- Number of tokens currently in the bucket
-
-
- Time of the last drip, in system ticks
-
-
-
- Default constructor
-
- Parent bucket if this is a child bucket, or
- null if this is a root bucket
- Maximum size of the bucket in bytes, or
- zero if this bucket has no maximum capacity
- Rate that the bucket fills, in bytes per
- second. If zero, the bucket always remains full
-
-
-
- Remove a given number of tokens from the bucket
-
- Number of tokens to remove from the bucket
- True if the requested number of tokens were removed from
- the bucket, otherwise false
-
-
-
- Remove a given number of tokens from the bucket
-
- Number of tokens to remove from the bucket
- True if tokens were added to the bucket
- during this call, otherwise false
- True if the requested number of tokens were removed from
- the bucket, otherwise false
-
-
-
- Add tokens to the bucket over time. The number of tokens added each
- call depends on the length of time that has passed since the last
- call to Drip
-
- True if tokens were added to the bucket, otherwise false
-
-
-
- The parent bucket of this bucket, or null if this bucket has no
- parent. The parent bucket will limit the aggregate bandwidth of all
- of its children buckets
-
-
-
-
- Maximum burst rate in bytes per second. This is the maximum number
- of tokens that can accumulate in the bucket at any one time
-
-
-
-
- The speed limit of this bucket in bytes per second. This is the
- number of tokens that are added to the bucket per second
-
- Tokens are added to the bucket any time
- is called, at the granularity of
- the system tick interval (typically around 15-22ms)
-
-
-
- The number of bytes that can be sent at this moment. This is the
- current number of tokens in the bucket
- If this bucket has a parent bucket that does not have
- enough tokens for a request, will
- return false regardless of the content of this bucket
-
-
-
- X value
-
-
- Y value
-
-
- Z value
-
-
- W value
-
-
-
- Build a quaternion from normalized float values
-
- X value from -1.0 to 1.0
- Y value from -1.0 to 1.0
- Z value from -1.0 to 1.0
-
-
-
- Constructor, builds a quaternion object from a byte array
-
- Byte array containing four four-byte floats
- Offset in the byte array to start reading at
- Whether the source data is normalized or
- not. If this is true 12 bytes will be read, otherwise 16 bytes will
- be read.
-
-
-
- Normalizes the quaternion
-
-
-
-
- Builds a quaternion object from a byte array
-
- The source byte array
- Offset in the byte array to start reading at
- Whether the source data is normalized or
- not. If this is true 12 bytes will be read, otherwise 16 bytes will
- be read.
-
-
-
- Normalize this quaternion and serialize it to a byte array
-
- A 12 byte array containing normalized X, Y, and Z floating
- point values in order using little endian byte ordering
-
-
-
- Writes the raw bytes for this quaternion to a byte array
-
- Destination byte array
- Position in the destination array to start
- writing. Must be at least 12 bytes before the end of the array
-
-
-
- Convert this quaternion to euler angles
-
- X euler angle
- Y euler angle
- Z euler angle
-
-
-
- Convert this quaternion to an angle around an axis
-
- Unit vector describing the axis
- Angle around the axis, in radians
-
-
-
- Returns the conjugate (spatial inverse) of a quaternion
-
-
-
-
- Build a quaternion from an axis and an angle of rotation around
- that axis
-
-
-
-
- Build a quaternion from an axis and an angle of rotation around
- that axis
-
- Axis of rotation
- Angle of rotation
-
-
-
- Creates a quaternion from a vector containing roll, pitch, and yaw
- in radians
-
- Vector representation of the euler angles in
- radians
- Quaternion representation of the euler angles
-
-
-
- Creates a quaternion from roll, pitch, and yaw euler angles in
- radians
-
- X angle in radians
- Y angle in radians
- Z angle in radians
- Quaternion representation of the euler angles
-
-
-
- Conjugates and renormalizes a vector
-
-
-
-
- Spherical linear interpolation between two quaternions
-
-
-
-
- Get a string representation of the quaternion elements with up to three
- decimal digits and separated by spaces only
-
- Raw string representation of the quaternion
-
-
- A quaternion with a value of 0,0,0,1
-
-
-
- Same as Queue except Dequeue function blocks until there is an object to return.
- Note: This class does not need to be synchronized
-
-
-
-
- Create new BlockingQueue.
-
- The System.Collections.ICollection to copy elements from
-
-
-
- Create new BlockingQueue.
-
- The initial number of elements that the queue can contain
-
-
-
- Create new BlockingQueue.
-
-
-
-
- BlockingQueue Destructor (Close queue, resume any waiting thread).
-
-
-
-
- Remove all objects from the Queue.
-
-
-
-
- Remove all objects from the Queue, resume all dequeue threads.
-
-
-
-
- Removes and returns the object at the beginning of the Queue.
-
- Object in queue.
-
-
-
- Removes and returns the object at the beginning of the Queue.
-
- time to wait before returning
- Object in queue.
-
-
-
- Removes and returns the object at the beginning of the Queue.
-
- time to wait before returning (in milliseconds)
- Object in queue.
-
-
-
- Adds an object to the end of the Queue
-
- Object to put in queue
-
-
-
- Open Queue.
-
-
-
-
- Gets flag indicating if queue has been closed.
-
-
-
- Used for converting degrees to radians
-
-
- Used for converting radians to degrees
-
-
- Provide a single instance of the CultureInfo class to
- help parsing in situations where the grid assumes an en-us
- culture
-
-
- UNIX epoch in DateTime format
-
-
- Provide a single instance of the MD5 class to avoid making
- duplicate copies and handle thread safety
-
-
- Provide a single instance of the SHA-1 class to avoid
- making duplicate copies and handle thread safety
-
-
- Provide a single instance of a random number generator
- to avoid making duplicate copies and handle thread safety
-
-
-
- Clamp a given value between a range
-
- Value to clamp
- Minimum allowable value
- Maximum allowable value
- A value inclusively between lower and upper
-
-
-
- Clamp a given value between a range
-
- Value to clamp
- Minimum allowable value
- Maximum allowable value
- A value inclusively between lower and upper
-
-
-
- Clamp a given value between a range
-
- Value to clamp
- Minimum allowable value
- Maximum allowable value
- A value inclusively between lower and upper
-
-
-
- Round a floating-point value to the nearest integer
-
- Floating point number to round
- Integer
-
-
-
- Test if a single precision float is a finite number
-
-
-
-
- Test if a double precision float is a finite number
-
-
-
-
- Get the distance between two floating-point values
-
- First value
- Second value
- The distance between the two values
-
-
-
- Compute the MD5 hash for a byte array
-
- Byte array to compute the hash for
- MD5 hash of the input data
-
-
-
- Compute the SHA1 hash for a byte array
-
- Byte array to compute the hash for
- SHA1 hash of the input data
-
-
-
- Calculate the SHA1 hash of a given string
-
- The string to hash
- The SHA1 hash as a string
-
-
-
- Compute the SHA256 hash for a byte array
-
- Byte array to compute the hash for
- SHA256 hash of the input data
-
-
-
- Calculate the SHA256 hash of a given string
-
- The string to hash
- The SHA256 hash as a string
-
-
-
- Calculate the MD5 hash of a given string
-
- The password to hash
- An MD5 hash in string format, with $1$ prepended
-
-
-
- Calculate the MD5 hash of a given string
-
- The string to hash
- The MD5 hash as a string
-
-
-
- Generate a random double precision floating point value
-
- Random value of type double
-
-
-
- Get the current running platform
-
- Enumeration of the current platform we are running on
-
-
-
- Get the current running runtime
-
- Enumeration of the current runtime we are running on
-
-
-
- Convert the first two bytes starting in the byte array in
- little endian ordering to a signed short integer
-
- An array two bytes or longer
- A signed short integer, will be zero if a short can't be
- read at the given position
-
-
-
- Convert the first two bytes starting at the given position in
- little endian ordering to a signed short integer
-
- An array two bytes or longer
- Position in the array to start reading
- A signed short integer, will be zero if a short can't be
- read at the given position
-
-
-
- Convert the first four bytes starting at the given position in
- little endian ordering to a signed integer
-
- An array four bytes or longer
- Position to start reading the int from
- A signed integer, will be zero if an int can't be read
- at the given position
-
-
-
- Convert the first four bytes of the given array in little endian
- ordering to a signed integer
-
- An array four bytes or longer
- A signed integer, will be zero if the array contains
- less than four bytes
-
-
-
- Convert the first eight bytes of the given array in little endian
- ordering to a signed long integer
-
- An array eight bytes or longer
- A signed long integer, will be zero if the array contains
- less than eight bytes
-
-
-
- Convert the first eight bytes starting at the given position in
- little endian ordering to a signed long integer
-
- An array eight bytes or longer
- Position to start reading the long from
- A signed long integer, will be zero if a long can't be read
- at the given position
-
-
-
- Convert the first two bytes starting at the given position in
- little endian ordering to an unsigned short
-
- Byte array containing the ushort
- Position to start reading the ushort from
- An unsigned short, will be zero if a ushort can't be read
- at the given position
-
-
-
- Convert two bytes in little endian ordering to an unsigned short
-
- Byte array containing the ushort
- An unsigned short, will be zero if a ushort can't be
- read
-
-
-
- Convert the first four bytes starting at the given position in
- little endian ordering to an unsigned integer
-
- Byte array containing the uint
- Position to start reading the uint from
- An unsigned integer, will be zero if a uint can't be read
- at the given position
-
-
-
- Convert the first four bytes of the given array in little endian
- ordering to an unsigned integer
-
- An array four bytes or longer
- An unsigned integer, will be zero if the array contains
- less than four bytes
-
-
-
- Convert the first eight bytes of the given array in little endian
- ordering to an unsigned 64-bit integer
-
- An array eight bytes or longer
- An unsigned 64-bit integer, will be zero if the array
- contains less than eight bytes
-
-
-
- Convert four bytes in little endian ordering to a floating point
- value
-
- Byte array containing a little ending floating
- point value
- Starting position of the floating point value in
- the byte array
- Single precision value
-
-
-
- Convert an integer to a byte array in little endian format
-
- The integer to convert
- A four byte little endian array
-
-
-
- Convert an integer to a byte array in big endian format
-
- The integer to convert
- A four byte big endian array
-
-
-
- Convert a 64-bit integer to a byte array in little endian format
-
- The value to convert
- An 8 byte little endian array
-
-
-
- Convert a 64-bit unsigned integer to a byte array in little endian
- format
-
- The value to convert
- An 8 byte little endian array
-
-
-
- Convert a floating point value to four bytes in little endian
- ordering
-
- A floating point value
- A four byte array containing the value in little endian
- ordering
-
-
-
- Converts an unsigned integer to a hexadecimal string
-
- An unsigned integer to convert to a string
- A hexadecimal string 10 characters long
- 0x7fffffff
-
-
-
- Convert a variable length UTF8 byte array to a string
-
- The UTF8 encoded byte array to convert
- The decoded string
-
-
-
- Converts a byte array to a string containing hexadecimal characters
-
- The byte array to convert to a string
- The name of the field to prepend to each
- line of the string
- A string containing hexadecimal characters on multiple
- lines. Each line is prepended with the field name
-
-
-
- Converts a byte array to a string containing hexadecimal characters
-
- The byte array to convert to a string
- Number of bytes in the array to parse
- A string to prepend to each line of the hex
- dump
- A string containing hexadecimal characters on multiple
- lines. Each line is prepended with the field name
-
-
-
- Convert a string to a UTF8 encoded byte array
-
- The string to convert
- A null-terminated UTF8 byte array
-
-
-
- Converts a string containing hexadecimal characters to a byte array
-
- String containing hexadecimal characters
- If true, gracefully handles null, empty and
- uneven strings as well as stripping unconvertable characters
- The converted byte array
-
-
-
- Returns true is c is a hexadecimal digit (A-F, a-f, 0-9)
-
- Character to test
- true if hex digit, false if not
-
-
-
- Converts 1 or 2 character string into equivalant byte value
-
- 1 or 2 character string
- byte
-
-
-
- Convert a float value to a byte given a minimum and maximum range
-
- Value to convert to a byte
- Minimum value range
- Maximum value range
- A single byte representing the original float value
-
-
-
- Convert a byte to a float value given a minimum and maximum range
-
- Byte array to get the byte from
- Position in the byte array the desired byte is at
- Minimum value range
- Maximum value range
- A float value inclusively between lower and upper
-
-
-
- Convert a byte to a float value given a minimum and maximum range
-
- Byte to convert to a float value
- Minimum value range
- Maximum value range
- A float value inclusively between lower and upper
-
-
-
- Attempts to parse a floating point value from a string, using an
- EN-US number format
-
- String to parse
- Resulting floating point number
- True if the parse was successful, otherwise false
-
-
-
- Attempts to parse a floating point value from a string, using an
- EN-US number format
-
- String to parse
- Resulting floating point number
- True if the parse was successful, otherwise false
-
-
-
- Tries to parse an unsigned 32-bit integer from a hexadecimal string
-
- String to parse
- Resulting integer
- True if the parse was successful, otherwise false
-
-
-
- Takes an AssetType and returns the string representation
-
- The source
- The string version of the AssetType
-
-
-
- Translate a string name of an AssetType into the proper Type
-
- A string containing the AssetType name
- The AssetType which matches the string name, or AssetType.Unknown if no match was found
-
-
-
- Convert an InventoryType to a string
-
- The to convert
- A string representation of the source
-
-
-
- Convert a string into a valid InventoryType
-
- A string representation of the InventoryType to convert
- A InventoryType object which matched the type
-
-
-
- Convert a SaleType to a string
-
- The to convert
- A string representation of the source
-
-
-
- Convert a string into a valid SaleType
-
- A string representation of the SaleType to convert
- A SaleType object which matched the type
-
-
-
- Copy a byte array
-
- Byte array to copy
- A copy of the given byte array
-
-
-
- Packs to 32-bit unsigned integers in to a 64-bit unsigned integer
-
- The left-hand (or X) value
- The right-hand (or Y) value
- A 64-bit integer containing the two 32-bit input values
-
-
-
- Unpacks two 32-bit unsigned integers from a 64-bit unsigned integer
-
- The 64-bit input integer
- The left-hand (or X) output value
- The right-hand (or Y) output value
-
-
-
- Convert an IP address object to an unsigned 32-bit integer
-
- IP address to convert
- 32-bit unsigned integer holding the IP address bits
-
-
-
- Gets a unix timestamp for the current time
-
- An unsigned integer representing a unix timestamp for now
-
-
-
- Convert a UNIX timestamp to a native DateTime object
-
- An unsigned integer representing a UNIX
- timestamp
- A DateTime object containing the same time specified in
- the given timestamp
-
-
-
- Convert a UNIX timestamp to a native DateTime object
-
- A signed integer representing a UNIX
- timestamp
- A DateTime object containing the same time specified in
- the given timestamp
-
-
-
- Convert a native DateTime object to a UNIX timestamp
-
- A DateTime object you want to convert to a
- timestamp
- An unsigned integer representing a UNIX timestamp
-
-
-
- Swap two values
-
- Type of the values to swap
- First value
- Second value
-
-
-
- Try to parse an enumeration value from a string
-
- Enumeration type
- String value to parse
- Enumeration value on success
- True if the parsing succeeded, otherwise false
-
-
-
- Swaps the high and low words in a byte. Converts aaaabbbb to bbbbaaaa
-
- Byte to swap the words in
- Byte value with the words swapped
-
-
-
- Attempts to convert a string representation of a hostname or IP
- address to a
-
- Hostname to convert to an IPAddress
- Converted IP address object, or null if the conversion
- failed
-
-
-
- Operating system
-
-
-
- Unknown
-
-
- Microsoft Windows
-
-
- Microsoft Windows CE
-
-
- Linux
-
-
- Apple OSX
-
-
-
- Runtime platform
-
-
-
- .NET runtime
-
-
- Mono runtime: http://www.mono-project.com/
-
-
-
- Convert this matrix to euler rotations
-
- X euler angle
- Y euler angle
- Z euler angle
-
-
-
- Convert this matrix to a quaternion rotation
-
- A quaternion representation of this rotation matrix
-
-
-
- Construct a matrix from euler rotation values in radians
-
- X euler angle in radians
- Y euler angle in radians
- Z euler angle in radians
-
-
-
- Get a formatted string representation of the vector
-
- A string representation of the vector
-
-
- A 4x4 matrix containing all zeroes
-
-
- A 4x4 identity matrix
-
-
- For thread safety
-
-
- For thread safety
-
-
-
- Purges expired objects from the cache. Called automatically by the purge timer.
-
-
-
- X value
-
-
- Y value
-
-
- Z value
-
-
- W value
-
-
-
- Constructor, builds a vector from a byte array
-
- Byte array containing four four-byte floats
- Beginning position in the byte array
-
-
-
- Test if this vector is equal to another vector, within a given
- tolerance range
-
- Vector to test against
- The acceptable magnitude of difference
- between the two vectors
- True if the magnitude of difference between the two vectors
- is less than the given tolerance, otherwise false
-
-
-
- IComparable.CompareTo implementation
-
-
-
-
- Test if this vector is composed of all finite numbers
-
-
-
-
- Builds a vector from a byte array
-
- Byte array containing a 16 byte vector
- Beginning position in the byte array
-
-
-
- Returns the raw bytes for this vector
-
- A 16 byte array containing X, Y, Z, and W
-
-
-
- Writes the raw bytes for this vector to a byte array
-
- Destination byte array
- Position in the destination array to start
- writing. Must be at least 16 bytes before the end of the array
-
-
-
- Get a string representation of the vector elements with up to three
- decimal digits and separated by spaces only
-
- Raw string representation of the vector
-
-
- A vector with a value of 0,0,0,0
-
-
- A vector with a value of 1,1,1,1
-
-
- A vector with a value of 1,0,0,0
-
-
- A vector with a value of 0,1,0,0
-
-
- A vector with a value of 0,0,1,0
-
-
- A vector with a value of 0,0,0,1
-
-
-
- Provides helper methods for parallelizing loops
-
-
-
-
- Executes a for loop in which iterations may run in parallel
-
- The loop will be started at this index
- The loop will be terminated before this index is reached
- Method body to run for each iteration of the loop
-
-
-
- Executes a for loop in which iterations may run in parallel
-
- The number of concurrent execution threads to run
- The loop will be started at this index
- The loop will be terminated before this index is reached
- Method body to run for each iteration of the loop
-
-
-
- Executes a foreach loop in which iterations may run in parallel
-
- Object type that the collection wraps
- An enumerable collection to iterate over
- Method body to run for each object in the collection
-
-
-
- Executes a foreach loop in which iterations may run in parallel
-
- Object type that the collection wraps
- The number of concurrent execution threads to run
- An enumerable collection to iterate over
- Method body to run for each object in the collection
-
-
-
- Executes a series of tasks in parallel
-
- A series of method bodies to execute
-
-
-
- Executes a series of tasks in parallel
-
- The number of concurrent execution threads to run
- A series of method bodies to execute
-
-
-
- A three-dimensional vector with floating-point values
-
-
-
- X value
-
-
- Y value
-
-
- Z value
-
-
-
- Constructor, builds a vector from a byte array
-
- Byte array containing three four-byte floats
- Beginning position in the byte array
-
-
-
- Test if this vector is equal to another vector, within a given
- tolerance range
-
- Vector to test against
- The acceptable magnitude of difference
- between the two vectors
- True if the magnitude of difference between the two vectors
- is less than the given tolerance, otherwise false
-
-
-
- IComparable.CompareTo implementation
-
-
-
-
- Test if this vector is composed of all finite numbers
-
-
-
-
- Builds a vector from a byte array
-
- Byte array containing a 12 byte vector
- Beginning position in the byte array
-
-
-
- Returns the raw bytes for this vector
-
- A 12 byte array containing X, Y, and Z
-
-
-
- Writes the raw bytes for this vector to a byte array
-
- Destination byte array
- Position in the destination array to start
- writing. Must be at least 12 bytes before the end of the array
-
-
-
- Parse a vector from a string
-
- A string representation of a 3D vector, enclosed
- in arrow brackets and separated by commas
-
-
-
- Calculate the rotation between two vectors
-
- Normalized directional vector (such as 1,0,0 for forward facing)
- Normalized target vector
-
-
-
- Interpolates between two vectors using a cubic equation
-
-
-
-
- Get a formatted string representation of the vector
-
- A string representation of the vector
-
-
-
- Get a string representation of the vector elements with up to three
- decimal digits and separated by spaces only
-
- Raw string representation of the vector
-
-
-
- Cross product between two vectors
-
-
-
- A vector with a value of 0,0,0
-
-
- A vector with a value of 1,1,1
-
-
- A unit vector facing forward (X axis), value 1,0,0
-
-
- A unit vector facing left (Y axis), value 0,1,0
-
-
- A unit vector facing up (Z axis), value 0,0,1
-
-
-
- A 128-bit Universally Unique Identifier, used throughout the Second
- Life networking protocol
-
-
-
- The System.Guid object this struct wraps around
-
-
-
- Constructor that takes a string UUID representation
-
- A string representation of a UUID, case
- insensitive and can either be hyphenated or non-hyphenated
- UUID("11f8aa9c-b071-4242-836b-13b7abe0d489")
-
-
-
- Constructor that takes a System.Guid object
-
- A Guid object that contains the unique identifier
- to be represented by this UUID
-
-
-
- Constructor that takes a byte array containing a UUID
-
- Byte array containing a 16 byte UUID
- Beginning offset in the array
-
-
-
- Constructor that takes an unsigned 64-bit unsigned integer to
- convert to a UUID
-
- 64-bit unsigned integer to convert to a UUID
-
-
-
- Copy constructor
-
- UUID to copy
-
-
-
- IComparable.CompareTo implementation
-
-
-
-
- Assigns this UUID from 16 bytes out of a byte array
-
- Byte array containing the UUID to assign this UUID to
- Starting position of the UUID in the byte array
-
-
-
- Returns a copy of the raw bytes for this UUID
-
- A 16 byte array containing this UUID
-
-
-
- Writes the raw bytes for this UUID to a byte array
-
- Destination byte array
- Position in the destination array to start
- writing. Must be at least 16 bytes before the end of the array
-
-
-
- Calculate an LLCRC (cyclic redundancy check) for this UUID
-
- The CRC checksum for this UUID
-
-
-
- Create a 64-bit integer representation from the second half of this UUID
-
- An integer created from the last eight bytes of this UUID
-
-
-
- Generate a UUID from a string
-
- A string representation of a UUID, case
- insensitive and can either be hyphenated or non-hyphenated
- UUID.Parse("11f8aa9c-b071-4242-836b-13b7abe0d489")
-
-
-
- Generate a UUID from a string
-
- A string representation of a UUID, case
- insensitive and can either be hyphenated or non-hyphenated
- Will contain the parsed UUID if successful,
- otherwise null
- True if the string was successfully parse, otherwise false
- UUID.TryParse("11f8aa9c-b071-4242-836b-13b7abe0d489", result)
-
-
-
- Combine two UUIDs together by taking the MD5 hash of a byte array
- containing both UUIDs
-
- First UUID to combine
- Second UUID to combine
- The UUID product of the combination
-
-
-
-
-
-
-
-
-
- Return a hash code for this UUID, used by .NET for hash tables
-
- An integer composed of all the UUID bytes XORed together
-
-
-
- Comparison function
-
- An object to compare to this UUID
- True if the object is a UUID and both UUIDs are equal
-
-
-
- Comparison function
-
- UUID to compare to
- True if the UUIDs are equal, otherwise false
-
-
-
- Get a hyphenated string representation of this UUID
-
- A string representation of this UUID, lowercase and
- with hyphens
- 11f8aa9c-b071-4242-836b-13b7abe0d489
-
-
-
- Equals operator
-
- First UUID for comparison
- Second UUID for comparison
- True if the UUIDs are byte for byte equal, otherwise false
-
-
-
- Not equals operator
-
- First UUID for comparison
- Second UUID for comparison
- True if the UUIDs are not equal, otherwise true
-
-
-
- XOR operator
-
- First UUID
- Second UUID
- A UUID that is a XOR combination of the two input UUIDs
-
-
-
- String typecasting operator
-
- A UUID in string form. Case insensitive,
- hyphenated or non-hyphenated
- A UUID built from the string representation
-
-
- An UUID with a value of all zeroes
-
-
- A cache of UUID.Zero as a string to optimize a common path
-
-
-
- A two-dimensional vector with floating-point values
-
-
-
- X value
-
-
- Y value
-
-
-
- Test if this vector is equal to another vector, within a given
- tolerance range
-
- Vector to test against
- The acceptable magnitude of difference
- between the two vectors
- True if the magnitude of difference between the two vectors
- is less than the given tolerance, otherwise false
-
-
-
- Test if this vector is composed of all finite numbers
-
-
-
-
- IComparable.CompareTo implementation
-
-
-
-
- Builds a vector from a byte array
-
- Byte array containing two four-byte floats
- Beginning position in the byte array
-
-
-
- Returns the raw bytes for this vector
-
- An eight-byte array containing X and Y
-
-
-
- Writes the raw bytes for this vector to a byte array
-
- Destination byte array
- Position in the destination array to start
- writing. Must be at least 8 bytes before the end of the array
-
-
-
- Parse a vector from a string
-
- A string representation of a 2D vector, enclosed
- in arrow brackets and separated by commas
-
-
-
- Interpolates between two vectors using a cubic equation
-
-
-
-
- Get a formatted string representation of the vector
-
- A string representation of the vector
-
-
-
- Get a string representation of the vector elements with up to three
- decimal digits and separated by spaces only
-
- Raw string representation of the vector
-
-
- A vector with a value of 0,0
-
-
- A vector with a value of 1,1
-
-
- A vector with a value of 1,0
-
-
- A vector with a value of 0,1
-
-
-
- An 8-bit color structure including an alpha channel
-
-
-
- Red
-
-
- Green
-
-
- Blue
-
-
- Alpha
-
-
-
-
-
-
-
-
-
-
-
-
- Builds a color from a byte array
-
- Byte array containing a 16 byte color
- Beginning position in the byte array
- True if the byte array stores inverted values,
- otherwise false. For example the color black (fully opaque) inverted
- would be 0xFF 0xFF 0xFF 0x00
-
-
-
- Returns the raw bytes for this vector
-
- Byte array containing a 16 byte color
- Beginning position in the byte array
- True if the byte array stores inverted values,
- otherwise false. For example the color black (fully opaque) inverted
- would be 0xFF 0xFF 0xFF 0x00
- True if the alpha value is inverted in
- addition to whatever the inverted parameter is. Setting inverted true
- and alphaInverted true will flip the alpha value back to non-inverted,
- but keep the other color bytes inverted
- A 16 byte array containing R, G, B, and A
-
-
-
- Copy constructor
-
- Color to copy
-
-
-
- IComparable.CompareTo implementation
-
- Sorting ends up like this: |--Grayscale--||--Color--|.
- Alpha is only used when the colors are otherwise equivalent
-
-
-
- Builds a color from a byte array
-
- Byte array containing a 16 byte color
- Beginning position in the byte array
- True if the byte array stores inverted values,
- otherwise false. For example the color black (fully opaque) inverted
- would be 0xFF 0xFF 0xFF 0x00
- True if the alpha value is inverted in
- addition to whatever the inverted parameter is. Setting inverted true
- and alphaInverted true will flip the alpha value back to non-inverted,
- but keep the other color bytes inverted
-
-
-
- Writes the raw bytes for this color to a byte array
-
- Destination byte array
- Position in the destination array to start
- writing. Must be at least 16 bytes before the end of the array
-
-
-
- Serializes this color into four bytes in a byte array
-
- Destination byte array
- Position in the destination array to start
- writing. Must be at least 4 bytes before the end of the array
- True to invert the output (1.0 becomes 0
- instead of 255)
-
-
-
- Writes the raw bytes for this color to a byte array
-
- Destination byte array
- Position in the destination array to start
- writing. Must be at least 16 bytes before the end of the array
-
-
-
- Ensures that values are in range 0-1
-
-
-
-
- Create an RGB color from a hue, saturation, value combination
-
- Hue
- Saturation
- Value
- An fully opaque RGB color (alpha is 1.0)
-
-
-
- Performs linear interpolation between two colors
-
- Color to start at
- Color to end at
- Amount to interpolate
- The interpolated color
-
-
- A Color4 with zero RGB values and fully opaque (alpha 1.0)
-
-
- A Color4 with full RGB values (1.0) and fully opaque (alpha 1.0)
-
-
-
- The different types of grid assets
-
-
-
- Unknown asset type
-
-
- Texture asset, stores in JPEG2000 J2C stream format
-
-
- Sound asset
-
-
- Calling card for another avatar
-
-
- Link to a location in world
-
-
- Collection of textures and parameters that can be
- worn by an avatar
-
-
- Primitive that can contain textures, sounds,
- scripts and more
-
-
- Notecard asset
-
-
- Holds a collection of inventory items
-
-
- Root inventory folder
-
-
- Linden scripting language script
-
-
- LSO bytecode for a script
-
-
- Uncompressed TGA texture
-
-
- Collection of textures and shape parameters that can
- be worn
-
-
- Trash folder
-
-
- Snapshot folder
-
-
- Lost and found folder
-
-
- Uncompressed sound
-
-
- Uncompressed TGA non-square image, not to be used as a
- texture
-
-
- Compressed JPEG non-square image, not to be used as a
- texture
-
-
- Animation
-
-
- Sequence of animations, sounds, chat, and pauses
-
-
- Simstate file
-
-
- Contains landmarks for favorites
-
-
- Asset is a link to another inventory item
-
-
- Asset is a link to another inventory folder
-
-
- Beginning of the range reserved for ensembles
-
-
- End of the range reserved for ensembles
-
-
- Folder containing inventory links to wearables and attachments
- that are part of the current outfit
-
-
- Folder containing inventory items or links to
- inventory items of wearables and attachments
- together make a full outfit
-
-
- Root folder for the folders of type OutfitFolder
-
-
-
-
-
-
- Inventory Item Types, eg Script, Notecard, Folder, etc
-
-
-
- Unknown
-
-
- Texture
-
-
- Sound
-
-
- Calling Card
-
-
- Landmark
-
-
- Notecard
-
-
-
-
-
- Folder
-
-
-
-
-
- an LSL Script
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Item Sale Status
-
-
-
- Not for sale
-
-
- The original is for sale
-
-
- Copies are for sale
-
-
- The contents of the object are for sale
-
-
-
- Types of wearable assets
-
-
-
- Body shape
-
-
- Skin textures and attributes
-
-
- Hair
-
-
- Eyes
-
-
- Shirt
-
-
- Pants
-
-
- Shoes
-
-
- Socks
-
-
- Jacket
-
-
- Gloves
-
-
- Undershirt
-
-
- Underpants
-
-
- Skirt
-
-
- Alpha mask to hide parts of the avatar
-
-
- Tattoo
-
-
- Invalid wearable asset
-
-
-
- A three-dimensional vector with doubleing-point values
-
-
-
- X value
-
-
- Y value
-
-
- Z value
-
-
-
- Constructor, builds a vector from a byte array
-
- Byte array containing three eight-byte doubles
- Beginning position in the byte array
-
-
-
- Test if this vector is equal to another vector, within a given
- tolerance range
-
- Vector to test against
- The acceptable magnitude of difference
- between the two vectors
- True if the magnitude of difference between the two vectors
- is less than the given tolerance, otherwise false
-
-
-
- IComparable.CompareTo implementation
-
-
-
-
- Test if this vector is composed of all finite numbers
-
-
-
-
- Builds a vector from a byte array
-
- Byte array containing a 24 byte vector
- Beginning position in the byte array
-
-
-
- Returns the raw bytes for this vector
-
- A 24 byte array containing X, Y, and Z
-
-
-
- Writes the raw bytes for this vector to a byte array
-
- Destination byte array
- Position in the destination array to start
- writing. Must be at least 24 bytes before the end of the array
-
-
-
- Parse a vector from a string
-
- A string representation of a 3D vector, enclosed
- in arrow brackets and separated by commas
-
-
-
- Interpolates between two vectors using a cubic equation
-
-
-
-
- Get a formatted string representation of the vector
-
- A string representation of the vector
-
-
-
- Get a string representation of the vector elements with up to three
- decimal digits and separated by spaces only
-
- Raw string representation of the vector
-
-
-
- Cross product between two vectors
-
-
-
- A vector with a value of 0,0,0
-
-
- A vector with a value of 1,1,1
-
-
- A unit vector facing forward (X axis), value of 1,0,0
-
-
- A unit vector facing left (Y axis), value of 0,1,0
-
-
- A unit vector facing up (Z axis), value of 0,0,1
-
-
-
- Determines the appropriate events to set, leaves the locks, and sets the events.
-
-
-
-
- A routine for lazily creating a event outside the lock (so if errors
- happen they are outside the lock and that we don't do much work
- while holding a spin lock). If all goes well, reenter the lock and
- set 'waitEvent'
-
-
-
-
- Waits on 'waitEvent' with a timeout of 'millisceondsTimeout.
- Before the wait 'numWaiters' is incremented and is restored before leaving this routine.
-
-
-
-
- Copy constructor
-
- Circular queue to copy
-
-
-
+
+
+
+ OpenMetaverseTypes
+
+
+
+ X value
+
+
+ Y value
+
+
+ Z value
+
+
+ W value
+
+
+
+ Constructor, builds a vector from a byte array
+
+ Byte array containing four four-byte floats
+ Beginning position in the byte array
+
+
+
+ Test if this vector is equal to another vector, within a given
+ tolerance range
+
+ Vector to test against
+ The acceptable magnitude of difference
+ between the two vectors
+ True if the magnitude of difference between the two vectors
+ is less than the given tolerance, otherwise false
+
+
+
+ IComparable.CompareTo implementation
+
+
+
+
+ Test if this vector is composed of all finite numbers
+
+
+
+
+ Builds a vector from a byte array
+
+ Byte array containing a 16 byte vector
+ Beginning position in the byte array
+
+
+
+ Returns the raw bytes for this vector
+
+ A 16 byte array containing X, Y, Z, and W
+
+
+
+ Writes the raw bytes for this vector to a byte array
+
+ Destination byte array
+ Position in the destination array to start
+ writing. Must be at least 16 bytes before the end of the array
+
+
+
+ Get a string representation of the vector elements with up to three
+ decimal digits and separated by spaces only
+
+ Raw string representation of the vector
+
+
+ A vector with a value of 0,0,0,0
+
+
+ A vector with a value of 1,1,1,1
+
+
+ A vector with a value of 1,0,0,0
+
+
+ A vector with a value of 0,1,0,0
+
+
+ A vector with a value of 0,0,1,0
+
+
+ A vector with a value of 0,0,0,1
+
+
+
+ A three-dimensional vector with floating-point values
+
+
+
+ X value
+
+
+ Y value
+
+
+ Z value
+
+
+
+ Constructor, builds a vector from a byte array
+
+ Byte array containing three four-byte floats
+ Beginning position in the byte array
+
+
+
+ Test if this vector is equal to another vector, within a given
+ tolerance range
+
+ Vector to test against
+ The acceptable magnitude of difference
+ between the two vectors
+ True if the magnitude of difference between the two vectors
+ is less than the given tolerance, otherwise false
+
+
+
+ IComparable.CompareTo implementation
+
+
+
+
+ Test if this vector is composed of all finite numbers
+
+
+
+
+ Builds a vector from a byte array
+
+ Byte array containing a 12 byte vector
+ Beginning position in the byte array
+
+
+
+ Returns the raw bytes for this vector
+
+ A 12 byte array containing X, Y, and Z
+
+
+
+ Writes the raw bytes for this vector to a byte array
+
+ Destination byte array
+ Position in the destination array to start
+ writing. Must be at least 12 bytes before the end of the array
+
+
+
+ Parse a vector from a string
+
+ A string representation of a 3D vector, enclosed
+ in arrow brackets and separated by commas
+
+
+
+ Calculate the rotation between two vectors
+
+ Normalized directional vector (such as 1,0,0 for forward facing)
+ Normalized target vector
+
+
+
+ Interpolates between two vectors using a cubic equation
+
+
+
+
+ Get a formatted string representation of the vector
+
+ A string representation of the vector
+
+
+
+ Get a string representation of the vector elements with up to three
+ decimal digits and separated by spaces only
+
+ Raw string representation of the vector
+
+
+
+ Cross product between two vectors
+
+
+
+ A vector with a value of 0,0,0
+
+
+ A vector with a value of 1,1,1
+
+
+ A unit vector facing forward (X axis), value 1,0,0
+
+
+ A unit vector facing left (Y axis), value 0,1,0
+
+
+ A unit vector facing up (Z axis), value 0,0,1
+
+
+
+ Attribute class that allows extra attributes to be attached to ENUMs
+
+
+
+ Text used when presenting ENUM to user
+
+
+ Default initializer
+
+
+ Text used when presenting ENUM to user
+
+
+
+ The different types of grid assets
+
+
+
+ Unknown asset type
+
+
+ Texture asset, stores in JPEG2000 J2C stream format
+
+
+ Sound asset
+
+
+ Calling card for another avatar
+
+
+ Link to a location in world
+
+
+ Collection of textures and parameters that can be
+ worn by an avatar
+
+
+ Primitive that can contain textures, sounds,
+ scripts and more
+
+
+ Notecard asset
+
+
+ Holds a collection of inventory items
+
+
+ Root inventory folder
+
+
+ Linden scripting language script
+
+
+ LSO bytecode for a script
+
+
+ Uncompressed TGA texture
+
+
+ Collection of textures and shape parameters that can
+ be worn
+
+
+ Trash folder
+
+
+ Snapshot folder
+
+
+ Lost and found folder
+
+
+ Uncompressed sound
+
+
+ Uncompressed TGA non-square image, not to be used as a
+ texture
+
+
+ Compressed JPEG non-square image, not to be used as a
+ texture
+
+
+ Animation
+
+
+ Sequence of animations, sounds, chat, and pauses
+
+
+ Simstate file
+
+
+ Contains landmarks for favorites
+
+
+ Asset is a link to another inventory item
+
+
+ Asset is a link to another inventory folder
+
+
+ Beginning of the range reserved for ensembles
+
+
+ End of the range reserved for ensembles
+
+
+ Folder containing inventory links to wearables and attachments
+ that are part of the current outfit
+
+
+ Folder containing inventory items or links to
+ inventory items of wearables and attachments
+ together make a full outfit
+
+
+ Root folder for the folders of type OutfitFolder
+
+
+
+
+
+
+ Inventory Item Types, eg Script, Notecard, Folder, etc
+
+
+
+ Unknown
+
+
+ Texture
+
+
+ Sound
+
+
+ Calling Card
+
+
+ Landmark
+
+
+ Notecard
+
+
+
+
+
+ Folder
+
+
+
+
+
+ an LSL Script
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Item Sale Status
+
+
+
+ Not for sale
+
+
+ The original is for sale
+
+
+ Copies are for sale
+
+
+ The contents of the object are for sale
+
+
+
+ Types of wearable assets
+
+
+
+ Body shape
+
+
+ Skin textures and attributes
+
+
+ Hair
+
+
+ Eyes
+
+
+ Shirt
+
+
+ Pants
+
+
+ Shoes
+
+
+ Socks
+
+
+ Jacket
+
+
+ Gloves
+
+
+ Undershirt
+
+
+ Underpants
+
+
+ Skirt
+
+
+ Alpha mask to hide parts of the avatar
+
+
+ Tattoo
+
+
+ Invalid wearable asset
+
+
+
+ A two-dimensional vector with floating-point values
+
+
+
+ X value
+
+
+ Y value
+
+
+
+ Test if this vector is equal to another vector, within a given
+ tolerance range
+
+ Vector to test against
+ The acceptable magnitude of difference
+ between the two vectors
+ True if the magnitude of difference between the two vectors
+ is less than the given tolerance, otherwise false
+
+
+
+ Test if this vector is composed of all finite numbers
+
+
+
+
+ IComparable.CompareTo implementation
+
+
+
+
+ Builds a vector from a byte array
+
+ Byte array containing two four-byte floats
+ Beginning position in the byte array
+
+
+
+ Returns the raw bytes for this vector
+
+ An eight-byte array containing X and Y
+
+
+
+ Writes the raw bytes for this vector to a byte array
+
+ Destination byte array
+ Position in the destination array to start
+ writing. Must be at least 8 bytes before the end of the array
+
+
+
+ Parse a vector from a string
+
+ A string representation of a 2D vector, enclosed
+ in arrow brackets and separated by commas
+
+
+
+ Interpolates between two vectors using a cubic equation
+
+
+
+
+ Get a formatted string representation of the vector
+
+ A string representation of the vector
+
+
+
+ Get a string representation of the vector elements with up to three
+ decimal digits and separated by spaces only
+
+ Raw string representation of the vector
+
+
+ A vector with a value of 0,0
+
+
+ A vector with a value of 1,1
+
+
+ A vector with a value of 1,0
+
+
+ A vector with a value of 0,1
+
+
+
+ A 128-bit Universally Unique Identifier, used throughout the Second
+ Life networking protocol
+
+
+
+ The System.Guid object this struct wraps around
+
+
+
+ Constructor that takes a string UUID representation
+
+ A string representation of a UUID, case
+ insensitive and can either be hyphenated or non-hyphenated
+ UUID("11f8aa9c-b071-4242-836b-13b7abe0d489")
+
+
+
+ Constructor that takes a System.Guid object
+
+ A Guid object that contains the unique identifier
+ to be represented by this UUID
+
+
+
+ Constructor that takes a byte array containing a UUID
+
+ Byte array containing a 16 byte UUID
+ Beginning offset in the array
+
+
+
+ Constructor that takes an unsigned 64-bit unsigned integer to
+ convert to a UUID
+
+ 64-bit unsigned integer to convert to a UUID
+
+
+
+ Copy constructor
+
+ UUID to copy
+
+
+
+ IComparable.CompareTo implementation
+
+
+
+
+ Assigns this UUID from 16 bytes out of a byte array
+
+ Byte array containing the UUID to assign this UUID to
+ Starting position of the UUID in the byte array
+
+
+
+ Returns a copy of the raw bytes for this UUID
+
+ A 16 byte array containing this UUID
+
+
+
+ Writes the raw bytes for this UUID to a byte array
+
+ Destination byte array
+ Position in the destination array to start
+ writing. Must be at least 16 bytes before the end of the array
+
+
+
+ Calculate an LLCRC (cyclic redundancy check) for this UUID
+
+ The CRC checksum for this UUID
+
+
+
+ Create a 64-bit integer representation from the second half of this UUID
+
+ An integer created from the last eight bytes of this UUID
+
+
+
+ Generate a UUID from a string
+
+ A string representation of a UUID, case
+ insensitive and can either be hyphenated or non-hyphenated
+ UUID.Parse("11f8aa9c-b071-4242-836b-13b7abe0d489")
+
+
+
+ Generate a UUID from a string
+
+ A string representation of a UUID, case
+ insensitive and can either be hyphenated or non-hyphenated
+ Will contain the parsed UUID if successful,
+ otherwise null
+ True if the string was successfully parse, otherwise false
+ UUID.TryParse("11f8aa9c-b071-4242-836b-13b7abe0d489", result)
+
+
+
+ Combine two UUIDs together by taking the MD5 hash of a byte array
+ containing both UUIDs
+
+ First UUID to combine
+ Second UUID to combine
+ The UUID product of the combination
+
+
+
+
+
+
+
+
+
+ Return a hash code for this UUID, used by .NET for hash tables
+
+ An integer composed of all the UUID bytes XORed together
+
+
+
+ Comparison function
+
+ An object to compare to this UUID
+ True if the object is a UUID and both UUIDs are equal
+
+
+
+ Comparison function
+
+ UUID to compare to
+ True if the UUIDs are equal, otherwise false
+
+
+
+ Get a hyphenated string representation of this UUID
+
+ A string representation of this UUID, lowercase and
+ with hyphens
+ 11f8aa9c-b071-4242-836b-13b7abe0d489
+
+
+
+ Equals operator
+
+ First UUID for comparison
+ Second UUID for comparison
+ True if the UUIDs are byte for byte equal, otherwise false
+
+
+
+ Not equals operator
+
+ First UUID for comparison
+ Second UUID for comparison
+ True if the UUIDs are not equal, otherwise true
+
+
+
+ XOR operator
+
+ First UUID
+ Second UUID
+ A UUID that is a XOR combination of the two input UUIDs
+
+
+
+ String typecasting operator
+
+ A UUID in string form. Case insensitive,
+ hyphenated or non-hyphenated
+ A UUID built from the string representation
+
+
+ An UUID with a value of all zeroes
+
+
+ A cache of UUID.Zero as a string to optimize a common path
+
+
+ X value
+
+
+ Y value
+
+
+ Z value
+
+
+ W value
+
+
+
+ Build a quaternion from normalized float values
+
+ X value from -1.0 to 1.0
+ Y value from -1.0 to 1.0
+ Z value from -1.0 to 1.0
+
+
+
+ Constructor, builds a quaternion object from a byte array
+
+ Byte array containing four four-byte floats
+ Offset in the byte array to start reading at
+ Whether the source data is normalized or
+ not. If this is true 12 bytes will be read, otherwise 16 bytes will
+ be read.
+
+
+
+ Normalizes the quaternion
+
+
+
+
+ Builds a quaternion object from a byte array
+
+ The source byte array
+ Offset in the byte array to start reading at
+ Whether the source data is normalized or
+ not. If this is true 12 bytes will be read, otherwise 16 bytes will
+ be read.
+
+
+
+ Normalize this quaternion and serialize it to a byte array
+
+ A 12 byte array containing normalized X, Y, and Z floating
+ point values in order using little endian byte ordering
+
+
+
+ Writes the raw bytes for this quaternion to a byte array
+
+ Destination byte array
+ Position in the destination array to start
+ writing. Must be at least 12 bytes before the end of the array
+
+
+
+ Convert this quaternion to euler angles
+
+ X euler angle
+ Y euler angle
+ Z euler angle
+
+
+
+ Convert this quaternion to an angle around an axis
+
+ Unit vector describing the axis
+ Angle around the axis, in radians
+
+
+
+ Returns the conjugate (spatial inverse) of a quaternion
+
+
+
+
+ Build a quaternion from an axis and an angle of rotation around
+ that axis
+
+
+
+
+ Build a quaternion from an axis and an angle of rotation around
+ that axis
+
+ Axis of rotation
+ Angle of rotation
+
+
+
+ Creates a quaternion from a vector containing roll, pitch, and yaw
+ in radians
+
+ Vector representation of the euler angles in
+ radians
+ Quaternion representation of the euler angles
+
+
+
+ Creates a quaternion from roll, pitch, and yaw euler angles in
+ radians
+
+ X angle in radians
+ Y angle in radians
+ Z angle in radians
+ Quaternion representation of the euler angles
+
+
+
+ Conjugates and renormalizes a vector
+
+
+
+
+ Spherical linear interpolation between two quaternions
+
+
+
+
+ Get a string representation of the quaternion elements with up to three
+ decimal digits and separated by spaces only
+
+ Raw string representation of the quaternion
+
+
+ A quaternion with a value of 0,0,0,1
+
+
+
+ A thread-safe lockless queue that supports multiple readers and
+ multiple writers
+
+
+
+ Queue head
+
+
+ Queue tail
+
+
+ Queue item count
+
+
+
+ Constructor
+
+
+
+
+ Enqueue an item
+
+ Item to enqeue
+
+
+
+ Try to dequeue an item
+
+ Dequeued item if the dequeue was successful
+ True if an item was successfully deqeued, otherwise false
+
+
+ Gets the current number of items in the queue. Since this
+ is a lockless collection this value should be treated as a close
+ estimate
+
+
+
+ Provides a node container for data in a singly linked list
+
+
+
+ Pointer to the next node in list
+
+
+ The data contained by the node
+
+
+
+ Constructor
+
+
+
+
+ Constructor
+
+
+
+ Used for converting degrees to radians
+
+
+ Used for converting radians to degrees
+
+
+
+ Convert the first two bytes starting in the byte array in
+ little endian ordering to a signed short integer
+
+ An array two bytes or longer
+ A signed short integer, will be zero if a short can't be
+ read at the given position
+
+
+
+ Convert the first two bytes starting at the given position in
+ little endian ordering to a signed short integer
+
+ An array two bytes or longer
+ Position in the array to start reading
+ A signed short integer, will be zero if a short can't be
+ read at the given position
+
+
+
+ Convert the first four bytes starting at the given position in
+ little endian ordering to a signed integer
+
+ An array four bytes or longer
+ Position to start reading the int from
+ A signed integer, will be zero if an int can't be read
+ at the given position
+
+
+
+ Convert the first four bytes of the given array in little endian
+ ordering to a signed integer
+
+ An array four bytes or longer
+ A signed integer, will be zero if the array contains
+ less than four bytes
+
+
+
+ Convert the first eight bytes of the given array in little endian
+ ordering to a signed long integer
+
+ An array eight bytes or longer
+ A signed long integer, will be zero if the array contains
+ less than eight bytes
+
+
+
+ Convert the first eight bytes starting at the given position in
+ little endian ordering to a signed long integer
+
+ An array eight bytes or longer
+ Position to start reading the long from
+ A signed long integer, will be zero if a long can't be read
+ at the given position
+
+
+
+ Convert the first two bytes starting at the given position in
+ little endian ordering to an unsigned short
+
+ Byte array containing the ushort
+ Position to start reading the ushort from
+ An unsigned short, will be zero if a ushort can't be read
+ at the given position
+
+
+
+ Convert two bytes in little endian ordering to an unsigned short
+
+ Byte array containing the ushort
+ An unsigned short, will be zero if a ushort can't be
+ read
+
+
+
+ Convert the first four bytes starting at the given position in
+ little endian ordering to an unsigned integer
+
+ Byte array containing the uint
+ Position to start reading the uint from
+ An unsigned integer, will be zero if a uint can't be read
+ at the given position
+
+
+
+ Convert the first four bytes of the given array in little endian
+ ordering to an unsigned integer
+
+ An array four bytes or longer
+ An unsigned integer, will be zero if the array contains
+ less than four bytes
+
+
+
+ Convert the first eight bytes of the given array in little endian
+ ordering to an unsigned 64-bit integer
+
+ An array eight bytes or longer
+ An unsigned 64-bit integer, will be zero if the array
+ contains less than eight bytes
+
+
+
+ Convert four bytes in little endian ordering to a floating point
+ value
+
+ Byte array containing a little ending floating
+ point value
+ Starting position of the floating point value in
+ the byte array
+ Single precision value
+
+
+
+ Convert an integer to a byte array in little endian format
+
+ The integer to convert
+ A four byte little endian array
+
+
+
+ Convert an integer to a byte array in big endian format
+
+ The integer to convert
+ A four byte big endian array
+
+
+
+ Convert a 64-bit integer to a byte array in little endian format
+
+ The value to convert
+ An 8 byte little endian array
+
+
+
+ Convert a 64-bit unsigned integer to a byte array in little endian
+ format
+
+ The value to convert
+ An 8 byte little endian array
+
+
+
+ Convert a floating point value to four bytes in little endian
+ ordering
+
+ A floating point value
+ A four byte array containing the value in little endian
+ ordering
+
+
+
+ Converts an unsigned integer to a hexadecimal string
+
+ An unsigned integer to convert to a string
+ A hexadecimal string 10 characters long
+ 0x7fffffff
+
+
+
+ Convert a variable length UTF8 byte array to a string
+
+ The UTF8 encoded byte array to convert
+ The decoded string
+
+
+
+ Converts a byte array to a string containing hexadecimal characters
+
+ The byte array to convert to a string
+ The name of the field to prepend to each
+ line of the string
+ A string containing hexadecimal characters on multiple
+ lines. Each line is prepended with the field name
+
+
+
+ Converts a byte array to a string containing hexadecimal characters
+
+ The byte array to convert to a string
+ Number of bytes in the array to parse
+ A string to prepend to each line of the hex
+ dump
+ A string containing hexadecimal characters on multiple
+ lines. Each line is prepended with the field name
+
+
+
+ Convert a string to a UTF8 encoded byte array
+
+ The string to convert
+ A null-terminated UTF8 byte array
+
+
+
+ Converts a string containing hexadecimal characters to a byte array
+
+ String containing hexadecimal characters
+ If true, gracefully handles null, empty and
+ uneven strings as well as stripping unconvertable characters
+ The converted byte array
+
+
+
+ Returns true is c is a hexadecimal digit (A-F, a-f, 0-9)
+
+ Character to test
+ true if hex digit, false if not
+
+
+
+ Converts 1 or 2 character string into equivalant byte value
+
+ 1 or 2 character string
+ byte
+
+
+
+ Convert a float value to a byte given a minimum and maximum range
+
+ Value to convert to a byte
+ Minimum value range
+ Maximum value range
+ A single byte representing the original float value
+
+
+
+ Convert a byte to a float value given a minimum and maximum range
+
+ Byte array to get the byte from
+ Position in the byte array the desired byte is at
+ Minimum value range
+ Maximum value range
+ A float value inclusively between lower and upper
+
+
+
+ Convert a byte to a float value given a minimum and maximum range
+
+ Byte to convert to a float value
+ Minimum value range
+ Maximum value range
+ A float value inclusively between lower and upper
+
+
+
+ Attempts to parse a floating point value from a string, using an
+ EN-US number format
+
+ String to parse
+ Resulting floating point number
+ True if the parse was successful, otherwise false
+
+
+
+ Attempts to parse a floating point value from a string, using an
+ EN-US number format
+
+ String to parse
+ Resulting floating point number
+ True if the parse was successful, otherwise false
+
+
+
+ Tries to parse an unsigned 32-bit integer from a hexadecimal string
+
+ String to parse
+ Resulting integer
+ True if the parse was successful, otherwise false
+
+
+
+ Returns text specified in EnumInfo attribute of the enumerator
+ To add the text use [EnumInfo(Text = "Some nice text here")] before declaration
+ of enum values
+
+ Enum value
+ Text representation of the enum
+
+
+
+ Takes an AssetType and returns the string representation
+
+ The source
+ The string version of the AssetType
+
+
+
+ Translate a string name of an AssetType into the proper Type
+
+ A string containing the AssetType name
+ The AssetType which matches the string name, or AssetType.Unknown if no match was found
+
+
+
+ Convert an InventoryType to a string
+
+ The to convert
+ A string representation of the source
+
+
+
+ Convert a string into a valid InventoryType
+
+ A string representation of the InventoryType to convert
+ A InventoryType object which matched the type
+
+
+
+ Convert a SaleType to a string
+
+ The to convert
+ A string representation of the source
+
+
+
+ Convert a string into a valid SaleType
+
+ A string representation of the SaleType to convert
+ A SaleType object which matched the type
+
+
+
+ Converts a string used in LLSD to AttachmentPoint type
+
+ String representation of AttachmentPoint to convert
+ AttachmentPoint enum
+
+
+
+ Copy a byte array
+
+ Byte array to copy
+ A copy of the given byte array
+
+
+
+ Packs to 32-bit unsigned integers in to a 64-bit unsigned integer
+
+ The left-hand (or X) value
+ The right-hand (or Y) value
+ A 64-bit integer containing the two 32-bit input values
+
+
+
+ Unpacks two 32-bit unsigned integers from a 64-bit unsigned integer
+
+ The 64-bit input integer
+ The left-hand (or X) output value
+ The right-hand (or Y) output value
+
+
+
+ Convert an IP address object to an unsigned 32-bit integer
+
+ IP address to convert
+ 32-bit unsigned integer holding the IP address bits
+
+
+
+ Gets a unix timestamp for the current time
+
+ An unsigned integer representing a unix timestamp for now
+
+
+
+ Convert a UNIX timestamp to a native DateTime object
+
+ An unsigned integer representing a UNIX
+ timestamp
+ A DateTime object containing the same time specified in
+ the given timestamp
+
+
+
+ Convert a UNIX timestamp to a native DateTime object
+
+ A signed integer representing a UNIX
+ timestamp
+ A DateTime object containing the same time specified in
+ the given timestamp
+
+
+
+ Convert a native DateTime object to a UNIX timestamp
+
+ A DateTime object you want to convert to a
+ timestamp
+ An unsigned integer representing a UNIX timestamp
+
+
+
+ Swap two values
+
+ Type of the values to swap
+ First value
+ Second value
+
+
+
+ Try to parse an enumeration value from a string
+
+ Enumeration type
+ String value to parse
+ Enumeration value on success
+ True if the parsing succeeded, otherwise false
+
+
+
+ Swaps the high and low words in a byte. Converts aaaabbbb to bbbbaaaa
+
+ Byte to swap the words in
+ Byte value with the words swapped
+
+
+
+ Attempts to convert a string representation of a hostname or IP
+ address to a
+
+ Hostname to convert to an IPAddress
+ Converted IP address object, or null if the conversion
+ failed
+
+
+ Provide a single instance of the CultureInfo class to
+ help parsing in situations where the grid assumes an en-us
+ culture
+
+
+ UNIX epoch in DateTime format
+
+
+ Provide a single instance of the MD5 class to avoid making
+ duplicate copies and handle thread safety
+
+
+ Provide a single instance of the SHA-1 class to avoid
+ making duplicate copies and handle thread safety
+
+
+ Provide a single instance of a random number generator
+ to avoid making duplicate copies and handle thread safety
+
+
+
+ Clamp a given value between a range
+
+ Value to clamp
+ Minimum allowable value
+ Maximum allowable value
+ A value inclusively between lower and upper
+
+
+
+ Clamp a given value between a range
+
+ Value to clamp
+ Minimum allowable value
+ Maximum allowable value
+ A value inclusively between lower and upper
+
+
+
+ Clamp a given value between a range
+
+ Value to clamp
+ Minimum allowable value
+ Maximum allowable value
+ A value inclusively between lower and upper
+
+
+
+ Round a floating-point value to the nearest integer
+
+ Floating point number to round
+ Integer
+
+
+
+ Test if a single precision float is a finite number
+
+
+
+
+ Test if a double precision float is a finite number
+
+
+
+
+ Get the distance between two floating-point values
+
+ First value
+ Second value
+ The distance between the two values
+
+
+
+ Compute the MD5 hash for a byte array
+
+ Byte array to compute the hash for
+ MD5 hash of the input data
+
+
+
+ Compute the SHA1 hash for a byte array
+
+ Byte array to compute the hash for
+ SHA1 hash of the input data
+
+
+
+ Calculate the SHA1 hash of a given string
+
+ The string to hash
+ The SHA1 hash as a string
+
+
+
+ Compute the SHA256 hash for a byte array
+
+ Byte array to compute the hash for
+ SHA256 hash of the input data
+
+
+
+ Calculate the SHA256 hash of a given string
+
+ The string to hash
+ The SHA256 hash as a string
+
+
+
+ Calculate the MD5 hash of a given string
+
+ The password to hash
+ An MD5 hash in string format, with $1$ prepended
+
+
+
+ Calculate the MD5 hash of a given string
+
+ The string to hash
+ The MD5 hash as a string
+
+
+
+ Generate a random double precision floating point value
+
+ Random value of type double
+
+
+
+ Get the current running platform
+
+ Enumeration of the current platform we are running on
+
+
+
+ Get the current running runtime
+
+ Enumeration of the current runtime we are running on
+
+
+
+ Operating system
+
+
+
+ Unknown
+
+
+ Microsoft Windows
+
+
+ Microsoft Windows CE
+
+
+ Linux
+
+
+ Apple OSX
+
+
+
+ Runtime platform
+
+
+
+ .NET runtime
+
+
+ Mono runtime: http://www.mono-project.com/
+
+
+
+ Copy constructor
+
+ Circular queue to copy
+
+
+
+ Determines the appropriate events to set, leaves the locks, and sets the events.
+
+
+
+
+ A routine for lazily creating a event outside the lock (so if errors
+ happen they are outside the lock and that we don't do much work
+ while holding a spin lock). If all goes well, reenter the lock and
+ set 'waitEvent'
+
+
+
+
+ Waits on 'waitEvent' with a timeout of 'millisceondsTimeout.
+ Before the wait 'numWaiters' is incremented and is restored before leaving this routine.
+
+
+
+
+ Provides helper methods for parallelizing loops
+
+
+
+
+ Executes a for loop in which iterations may run in parallel
+
+ The loop will be started at this index
+ The loop will be terminated before this index is reached
+ Method body to run for each iteration of the loop
+
+
+
+ Executes a for loop in which iterations may run in parallel
+
+ The number of concurrent execution threads to run
+ The loop will be started at this index
+ The loop will be terminated before this index is reached
+ Method body to run for each iteration of the loop
+
+
+
+ Executes a foreach loop in which iterations may run in parallel
+
+ Object type that the collection wraps
+ An enumerable collection to iterate over
+ Method body to run for each object in the collection
+
+
+
+ Executes a foreach loop in which iterations may run in parallel
+
+ Object type that the collection wraps
+ The number of concurrent execution threads to run
+ An enumerable collection to iterate over
+ Method body to run for each object in the collection
+
+
+
+ Executes a series of tasks in parallel
+
+ A series of method bodies to execute
+
+
+
+ Executes a series of tasks in parallel
+
+ The number of concurrent execution threads to run
+ A series of method bodies to execute
+
+
+
+ An 8-bit color structure including an alpha channel
+
+
+
+ Red
+
+
+ Green
+
+
+ Blue
+
+
+ Alpha
+
+
+
+
+
+
+
+
+
+
+
+
+ Builds a color from a byte array
+
+ Byte array containing a 16 byte color
+ Beginning position in the byte array
+ True if the byte array stores inverted values,
+ otherwise false. For example the color black (fully opaque) inverted
+ would be 0xFF 0xFF 0xFF 0x00
+
+
+
+ Returns the raw bytes for this vector
+
+ Byte array containing a 16 byte color
+ Beginning position in the byte array
+ True if the byte array stores inverted values,
+ otherwise false. For example the color black (fully opaque) inverted
+ would be 0xFF 0xFF 0xFF 0x00
+ True if the alpha value is inverted in
+ addition to whatever the inverted parameter is. Setting inverted true
+ and alphaInverted true will flip the alpha value back to non-inverted,
+ but keep the other color bytes inverted
+ A 16 byte array containing R, G, B, and A
+
+
+
+ Copy constructor
+
+ Color to copy
+
+
+
+ IComparable.CompareTo implementation
+
+ Sorting ends up like this: |--Grayscale--||--Color--|.
+ Alpha is only used when the colors are otherwise equivalent
+
+
+
+ Builds a color from a byte array
+
+ Byte array containing a 16 byte color
+ Beginning position in the byte array
+ True if the byte array stores inverted values,
+ otherwise false. For example the color black (fully opaque) inverted
+ would be 0xFF 0xFF 0xFF 0x00
+ True if the alpha value is inverted in
+ addition to whatever the inverted parameter is. Setting inverted true
+ and alphaInverted true will flip the alpha value back to non-inverted,
+ but keep the other color bytes inverted
+
+
+
+ Writes the raw bytes for this color to a byte array
+
+ Destination byte array
+ Position in the destination array to start
+ writing. Must be at least 16 bytes before the end of the array
+
+
+
+ Serializes this color into four bytes in a byte array
+
+ Destination byte array
+ Position in the destination array to start
+ writing. Must be at least 4 bytes before the end of the array
+ True to invert the output (1.0 becomes 0
+ instead of 255)
+
+
+
+ Writes the raw bytes for this color to a byte array
+
+ Destination byte array
+ Position in the destination array to start
+ writing. Must be at least 16 bytes before the end of the array
+
+
+
+ Ensures that values are in range 0-1
+
+
+
+
+ Create an RGB color from a hue, saturation, value combination
+
+ Hue
+ Saturation
+ Value
+ An fully opaque RGB color (alpha is 1.0)
+
+
+
+ Performs linear interpolation between two colors
+
+ Color to start at
+ Color to end at
+ Amount to interpolate
+ The interpolated color
+
+
+ A Color4 with zero RGB values and fully opaque (alpha 1.0)
+
+
+ A Color4 with full RGB values (1.0) and fully opaque (alpha 1.0)
+
+
+
+ Same as Queue except Dequeue function blocks until there is an object to return.
+ Note: This class does not need to be synchronized
+
+
+
+
+ Create new BlockingQueue.
+
+ The System.Collections.ICollection to copy elements from
+
+
+
+ Create new BlockingQueue.
+
+ The initial number of elements that the queue can contain
+
+
+
+ Create new BlockingQueue.
+
+
+
+
+ BlockingQueue Destructor (Close queue, resume any waiting thread).
+
+
+
+
+ Remove all objects from the Queue.
+
+
+
+
+ Remove all objects from the Queue, resume all dequeue threads.
+
+
+
+
+ Removes and returns the object at the beginning of the Queue.
+
+ Object in queue.
+
+
+
+ Removes and returns the object at the beginning of the Queue.
+
+ time to wait before returning
+ Object in queue.
+
+
+
+ Removes and returns the object at the beginning of the Queue.
+
+ time to wait before returning (in milliseconds)
+ Object in queue.
+
+
+
+ Adds an object to the end of the Queue
+
+ Object to put in queue
+
+
+
+ Open Queue.
+
+
+
+
+ Gets flag indicating if queue has been closed.
+
+
+
+
+ A three-dimensional vector with doubleing-point values
+
+
+
+ X value
+
+
+ Y value
+
+
+ Z value
+
+
+
+ Constructor, builds a vector from a byte array
+
+ Byte array containing three eight-byte doubles
+ Beginning position in the byte array
+
+
+
+ Test if this vector is equal to another vector, within a given
+ tolerance range
+
+ Vector to test against
+ The acceptable magnitude of difference
+ between the two vectors
+ True if the magnitude of difference between the two vectors
+ is less than the given tolerance, otherwise false
+
+
+
+ IComparable.CompareTo implementation
+
+
+
+
+ Test if this vector is composed of all finite numbers
+
+
+
+
+ Builds a vector from a byte array
+
+ Byte array containing a 24 byte vector
+ Beginning position in the byte array
+
+
+
+ Returns the raw bytes for this vector
+
+ A 24 byte array containing X, Y, and Z
+
+
+
+ Writes the raw bytes for this vector to a byte array
+
+ Destination byte array
+ Position in the destination array to start
+ writing. Must be at least 24 bytes before the end of the array
+
+
+
+ Parse a vector from a string
+
+ A string representation of a 3D vector, enclosed
+ in arrow brackets and separated by commas
+
+
+
+ Interpolates between two vectors using a cubic equation
+
+
+
+
+ Get a formatted string representation of the vector
+
+ A string representation of the vector
+
+
+
+ Get a string representation of the vector elements with up to three
+ decimal digits and separated by spaces only
+
+ Raw string representation of the vector
+
+
+
+ Cross product between two vectors
+
+
+
+ A vector with a value of 0,0,0
+
+
+ A vector with a value of 1,1,1
+
+
+ A unit vector facing forward (X axis), value of 1,0,0
+
+
+ A unit vector facing left (Y axis), value of 0,1,0
+
+
+ A unit vector facing up (Z axis), value of 0,0,1
+
+
+
+ A hierarchical token bucket for bandwidth throttling. See
+ http://en.wikipedia.org/wiki/Token_bucket for more information
+
+
+
+ Parent bucket to this bucket, or null if this is a root
+ bucket
+
+
+ Size of the bucket in bytes. If zero, the bucket has
+ infinite capacity
+
+
+ Rate that the bucket fills, in bytes per millisecond. If
+ zero, the bucket always remains full
+
+
+ Number of tokens currently in the bucket
+
+
+ Time of the last drip, in system ticks
+
+
+
+ Default constructor
+
+ Parent bucket if this is a child bucket, or
+ null if this is a root bucket
+ Maximum size of the bucket in bytes, or
+ zero if this bucket has no maximum capacity
+ Rate that the bucket fills, in bytes per
+ second. If zero, the bucket always remains full
+
+
+
+ Remove a given number of tokens from the bucket
+
+ Number of tokens to remove from the bucket
+ True if the requested number of tokens were removed from
+ the bucket, otherwise false
+
+
+
+ Remove a given number of tokens from the bucket
+
+ Number of tokens to remove from the bucket
+ True if tokens were added to the bucket
+ during this call, otherwise false
+ True if the requested number of tokens were removed from
+ the bucket, otherwise false
+
+
+
+ Add tokens to the bucket over time. The number of tokens added each
+ call depends on the length of time that has passed since the last
+ call to Drip
+
+ True if tokens were added to the bucket, otherwise false
+
+
+
+ The parent bucket of this bucket, or null if this bucket has no
+ parent. The parent bucket will limit the aggregate bandwidth of all
+ of its children buckets
+
+
+
+
+ Maximum burst rate in bytes per second. This is the maximum number
+ of tokens that can accumulate in the bucket at any one time
+
+
+
+
+ The speed limit of this bucket in bytes per second. This is the
+ number of tokens that are added to the bucket per second
+
+ Tokens are added to the bucket any time
+ is called, at the granularity of
+ the system tick interval (typically around 15-22ms)
+
+
+
+ The number of bytes that can be sent at this moment. This is the
+ current number of tokens in the bucket
+ If this bucket has a parent bucket that does not have
+ enough tokens for a request, will
+ return false regardless of the content of this bucket
+
+
+
+ For thread safety
+
+
+ For thread safety
+
+
+
+ Purges expired objects from the cache. Called automatically by the purge timer.
+
+
+
+
+ Convert this matrix to euler rotations
+
+ X euler angle
+ Y euler angle
+ Z euler angle
+
+
+
+ Convert this matrix to a quaternion rotation
+
+ A quaternion representation of this rotation matrix
+
+
+
+ Construct a matrix from euler rotation values in radians
+
+ X euler angle in radians
+ Y euler angle in radians
+ Z euler angle in radians
+
+
+
+ Get a formatted string representation of the vector
+
+ A string representation of the vector
+
+
+ A 4x4 matrix containing all zeroes
+
+
+ A 4x4 identity matrix
+
+
+
+ Identifier code for primitive types
+
+
+
+ None
+
+
+ A Primitive
+
+
+ A Avatar
+
+
+ Linden grass
+
+
+ Linden tree
+
+
+ A primitive that acts as the source for a particle stream
+
+
+ A Linden tree
+
+
+
+ Primary parameters for primitives such as Physics Enabled or Phantom
+
+
+
+ Deprecated
+
+
+ Whether physics are enabled for this object
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Whether this object contains an active touch script
+
+
+
+
+
+ Whether this object can receive payments
+
+
+ Whether this object is phantom (no collisions)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Deprecated
+
+
+
+
+
+
+
+
+
+
+
+ Deprecated
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Server flag, will not be sent to clients. Specifies that
+ the object is destroyed when it touches a simulator edge
+
+
+ Server flag, will not be sent to clients. Specifies that
+ the object will be returned to the owner's inventory when it
+ touches a simulator edge
+
+
+ Server flag, will not be sent to clients.
+
+
+ Server flag, will not be sent to client. Specifies that
+ the object is hovering/flying
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Sound flags for sounds attached to primitives
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Material type for a primitive
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Used in a helper function to roughly determine prim shape
+
+
+
+
+ Extra parameters for primitives, these flags are for features that have
+ been added after the original ObjectFlags that has all eight bits
+ reserved already
+
+
+
+ Whether this object has flexible parameters
+
+
+ Whether this object has light parameters
+
+
+ Whether this object is a sculpted prim
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Attachment points for objects on avatar bodies
+
+
+ Both InventoryObject and InventoryAttachment types can be attached
+
+
+
+ Right hand if object was not previously attached
+
+
+ Chest
+
+
+ Skull
+
+
+ Left shoulder
+
+
+ Right shoulder
+
+
+ Left hand
+
+
+ Right hand
+
+
+ Left foot
+
+
+ Right foot
+
+
+ Spine
+
+
+ Pelvis
+
+
+ Mouth
+
+
+ Chin
+
+
+ Left ear
+
+
+ Right ear
+
+
+ Left eyeball
+
+
+ Right eyeball
+
+
+ Nose
+
+
+ Right upper arm
+
+
+ Right forearm
+
+
+ Left upper arm
+
+
+ Left forearm
+
+
+ Right hip
+
+
+ Right upper leg
+
+
+ Right lower leg
+
+
+ Left hip
+
+
+ Left upper leg
+
+
+ Left lower leg
+
+
+ Stomach
+
+
+ Left pectoral
+
+
+ Right pectoral
+
+
+ HUD Center position 2
+
+
+ HUD Top-right
+
+
+ HUD Top
+
+
+ HUD Top-left
+
+
+ HUD Center
+
+
+ HUD Bottom-left
+
+
+ HUD Bottom
+
+
+ HUD Bottom-right
+
+
+
+ Tree foliage types
+
+
+
+ Pine1 tree
+
+
+ Oak tree
+
+
+ Tropical Bush1
+
+
+ Palm1 tree
+
+
+ Dogwood tree
+
+
+ Tropical Bush2
+
+
+ Palm2 tree
+
+
+ Cypress1 tree
+
+
+ Cypress2 tree
+
+
+ Pine2 tree
+
+
+ Plumeria
+
+
+ Winter pinetree1
+
+
+ Winter Aspen tree
+
+
+ Winter pinetree2
+
+
+ Eucalyptus tree
+
+
+ Fern
+
+
+ Eelgrass
+
+
+ Sea Sword
+
+
+ Kelp1 plant
+
+
+ Beach grass
+
+
+ Kelp2 plant
+
+
+
+ Grass foliage types
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Action associated with clicking on an object
+
+
+
+ Touch object
+
+
+ Sit on object
+
+
+ Purchase object or contents
+
+
+ Pay the object
+
+
+ Open task inventory
+
+
+ Play parcel media
+
+
+ Open parcel media
+
+
+
diff --git a/bin/OpenMetaverseTypes.dll b/bin/OpenMetaverseTypes.dll
index 01dc3d813c..b02735e773 100644
Binary files a/bin/OpenMetaverseTypes.dll and b/bin/OpenMetaverseTypes.dll differ
diff --git a/bin/OpenSim.ini.example b/bin/OpenSim.ini.example
index 2b78014968..1625de0de7 100644
--- a/bin/OpenSim.ini.example
+++ b/bin/OpenSim.ini.example
@@ -364,7 +364,7 @@
;; Path to default appearance XML file that specifies the look of the
;; default avatars
- ; default_appearance = default_appearance.xml
+ ; default_appearance = default_appearance.xml
[Wind]
;# {enabled} {} {Enable wind module?} {true false} true
@@ -510,7 +510,7 @@
;# {AllowOSFunctions} {Enabled:true} {Allow OSFunctions? (DANGEROUS!)} {true false} false
;; Allow the use of os* functions (some are dangerous)
; AllowOSFunctions = false
-
+
;# {AllowLightShareFunctions} {Enabled:true [LightShare]enable_windlight:true} {Allow LightShare functions?} {true false} true
; Allow the user of LightShare functions
; AllowLightShareFunctions = false
@@ -633,7 +633,7 @@
;; Service connectors to the Groups Service. Select one depending on
;; whether you're using a Flotsam XmlRpc backend or a SimianGrid backend
-
+
;# {ServicesConnectorModule} {Module:GroupsModule} {Service connector to use for groups?} {XmlRpcGroupsServicesConnector SimianGroupsServicesConnector} XmlRpcGroupsServicesConnector
;; The service connector to use for the GroupsModule
; ServicesConnectorModule = SimianGroupsServicesConnector
@@ -644,7 +644,7 @@
;# {NoticesEnabled} {Module:GroupsModule} {Enable group notices?} {true false} true
;; Enable Group Notices
- ; NoticesEnabled = true
+ ; NoticesEnabled = true
;; This makes the Groups modules very chatty on the console.
; DebugEnabled = false
@@ -652,12 +652,12 @@
;; Specify which messaging module to use for groups messaging and if it's
;; enabled
; MessagingModule = GroupsMessagingModule
- ; MessagingEnabled = true
+ ; MessagingEnabled = true
;; XmlRpc Security settings. These must match those set on your backend
;; groups service.
- ; XmlRpcServiceReadKey = 1234
- ; XmlRpcServiceWriteKey = 1234
+ ; XmlRpcServiceReadKey = 1234
+ ; XmlRpcServiceWriteKey = 1234
[InterestManagement]
;# {UpdatePrioritizationScheme} {} {Update prioritization scheme?} {BestAvatarResponsiveness Time Distance SimpleAngularDistance FrontBack} BestAvatarResponsiveness
diff --git a/bin/PrimMesher.dll b/bin/PrimMesher.dll
new file mode 100644
index 0000000000..249e91c0a5
Binary files /dev/null and b/bin/PrimMesher.dll differ
diff --git a/bin/Robust.HG.ini.example b/bin/Robust.HG.ini.example
index deceb86cdd..b81642a179 100644
--- a/bin/Robust.HG.ini.example
+++ b/bin/Robust.HG.ini.example
@@ -212,6 +212,10 @@ ServiceConnectors = "8003/OpenSim.Server.Handlers.dll:AssetServiceConnector,8003
; Does this grid allow incoming links to any region in it?
; If false, HG TPs happen only to the Default regions specified in [GridService] section
AllowTeleportsToAnyRegion = true
+
+ ; If you run this gatekeeper server behind a proxy, set this to true
+ ; HasProxy = true
+
[UserAgentService]
LocalServiceModule = "OpenSim.Services.HypergridService.dll:UserAgentService"
@@ -220,6 +224,9 @@ ServiceConnectors = "8003/OpenSim.Server.Handlers.dll:AssetServiceConnector,8003
GridService = "OpenSim.Services.GridService.dll:GridService"
GatekeeperService = "OpenSim.Services.HypergridService.dll:GatekeeperService"
+ ; If you run this user agent server behind a proxy, set this to true
+ ; HasProxy = true
+
;; If you separate the UserAgentService from the LoginService, set this to
;; the IP address of the machine where your LoginService is
;LoginServerIP = "127.0.0.1"
diff --git a/bin/Robust.ini.example b/bin/Robust.ini.example
index 093ead81d2..10edccd9c9 100644
--- a/bin/Robust.ini.example
+++ b/bin/Robust.ini.example
@@ -57,12 +57,12 @@ ServiceConnectors = "8003/OpenSim.Server.Handlers.dll:AssetServiceConnector,8003
LocalServiceModule = "OpenSim.Services.GridService.dll:GridService"
; Realm = "regions"
; AllowDuplicateNames = "True"
-
+
;; Next, we can specify properties of regions, including default and fallback regions
;; The syntax is: Region_ = ""
;; or: Region_ = ""
;; where can be DefaultRegion, FallbackRegion, NoDirectLogin, Persistent, LockedOut,Reservation,NoMove,Authenticate
- ;; For example:
+ ;; For example:
; Region_Welcome_Area = "DefaultRegion, FallbackRegion"
; (replace spaces with underscore)
@@ -83,7 +83,7 @@ ServiceConnectors = "8003/OpenSim.Server.Handlers.dll:AssetServiceConnector,8003
; for the server connector
AuthenticationServiceModule = "OpenSim.Services.AuthenticationService.dll:PasswordAuthenticationService"
UserAccountServiceModule = "OpenSim.Services.UserAccountService.dll:UserAccountService"
-
+
; * This is the new style authentication service. Currently, only MySQL
; * is implemented. "Realm" is the table that is used for user lookup.
; * It defaults to "useraccounts", which uses the new style.
@@ -141,6 +141,8 @@ ServiceConnectors = "8003/OpenSim.Server.Handlers.dll:AssetServiceConnector,8003
; For snowglobe's web map
; MapTileURL = "";
+ ; If you run this login server behind a proxy, set this to true
+ ; HasProxy = true
[GridInfoService]
; These settings are used to return information on a get_grid_info call.
diff --git a/bin/config-include/CenomeCache.ini.example b/bin/config-include/CenomeCache.ini.example
index c7c901b125..8ef4e03bdc 100644
--- a/bin/config-include/CenomeCache.ini.example
+++ b/bin/config-include/CenomeCache.ini.example
@@ -2,12 +2,12 @@
;;
;; Options for CenmoeAssetCache
;;
-
+
; 256 MB (default: 134217728)
MaxSize = 268435456
-
+
; How many assets it is possible to store cache (default: 4096)
MaxCount = 16384
-
+
; Expiration time - 1 hour (default: 30 minutes)
ExpirationTime = 60
diff --git a/bin/config-include/FlotsamCache.ini.example b/bin/config-include/FlotsamCache.ini.example
index b50d7ec946..026dee718d 100644
--- a/bin/config-include/FlotsamCache.ini.example
+++ b/bin/config-include/FlotsamCache.ini.example
@@ -2,7 +2,7 @@
;;
;; Options for FlotsamAssetCache
;;
-
+
; cache directory can be shared by multiple instances
CacheDirectory = ./assetcache
; Other examples:
@@ -34,9 +34,9 @@
; How often {in hours} should the disk be checked for expired filed
; Specify 0 to disable expiration checking
FileCleanupTimer = .166 ;roughly every 10 minutes
-
- ; If WAIT_ON_INPROGRESS_REQUESTS has been defined then this specifies how
- ; long (in miliseconds) to block a request thread while trying to complete
+
+ ; If WAIT_ON_INPROGRESS_REQUESTS has been defined then this specifies how
+ ; long (in miliseconds) to block a request thread while trying to complete
; an existing write to disk.
; WaitOnInprogressTimeout = 3000
@@ -50,10 +50,10 @@
; Warning level for cache directory size
;CacheWarnAt = 30000
-
- ; Perform a deep scan of all assets within all regions, looking for all assets
- ; present or referenced. Mark all assets found that are already present in the
- ; cache, and request all assets that are found that are not already cached (this
- ; will cause those assets to be cached)
- ;
- ; DeepScanBeforePurge = false
+
+ ; Perform a deep scan of all assets within all regions, looking for all assets
+ ; present or referenced. Mark all assets found that are already present in the
+ ; cache, and request all assets that are found that are not already cached (this
+ ; will cause those assets to be cached)
+ ;
+ ; DeepScanBeforePurge = false
diff --git a/bin/config-include/GridCommon.ini.example b/bin/config-include/GridCommon.ini.example
index 3ab11b8f5b..cb771b8d52 100644
--- a/bin/config-include/GridCommon.ini.example
+++ b/bin/config-include/GridCommon.ini.example
@@ -11,8 +11,8 @@
; for more details
;Include-Storage = "config-include/storage/SQLiteLegacyStandalone.ini";
- ; MySql
- ; Uncomment these lines if you want to use mysql storage
+ ; MySql
+ ; Uncomment these lines if you want to use mysql storage
; Change the connection string to your db details
;StorageProvider = "OpenSim.Data.MySQL.dll"
;ConnectionString = "Data Source=localhost;Database=opensim;User ID=opensim;Password=***;"
@@ -81,18 +81,18 @@
[Modules]
;; Choose 0 or 1 cache modules, and the corresponding config file, if it exists.
;; Copy the config .example file into your own .ini file and change configs there
-
+
AssetCaching = "FlotsamAssetCache"
Include-FlotsamCache = "config-include/FlotsamCache.ini"
;AssetCaching = "CenomeMemoryAssetCache"
;Include-CenomeCache = "config-include/CenomeCache.ini"
-
+
;AssetCaching = "GlynnTuckerAssetCache"
;; Optionally, the port for the LLProxyLoginModule module can be changed
-
+
;Setup_LLProxyLoginModule = "9090/"
;; Authorization is not on by default, as it depends on external php
- ;AuthorizationServices = "RemoteAuthorizationServicesConnector"
+ ;AuthorizationServices = "RemoteAuthorizationServicesConnector"
diff --git a/bin/config-include/Standalone.ini b/bin/config-include/Standalone.ini
index d74b50ef76..6355d09041 100644
--- a/bin/config-include/Standalone.ini
+++ b/bin/config-include/Standalone.ini
@@ -17,10 +17,10 @@
AvatarServices = "LocalAvatarServicesConnector"
EntityTransferModule = "BasicEntityTransferModule"
InventoryAccessModule = "BasicInventoryAccessModule"
-
- LibraryModule = true
- LLLoginServiceInConnector = true
- GridInfoServiceInConnector = true
+
+ LibraryModule = true
+ LLLoginServiceInConnector = true
+ GridInfoServiceInConnector = true
[SimulationDataStore]
LocalServiceModule = "OpenSim.Services.Connectors.dll:SimulationDataService"
@@ -35,9 +35,9 @@
LocalServiceModule = "OpenSim.Services.InventoryService.dll:XInventoryService"
[LibraryService]
- LocalServiceModule = "OpenSim.Services.InventoryService.dll:LibraryService"
- LibraryName = "OpenSim Library"
- DefaultLibrary = "./inventory/Libraries.xml"
+ LocalServiceModule = "OpenSim.Services.InventoryService.dll:LibraryService"
+ LibraryName = "OpenSim Library"
+ DefaultLibrary = "./inventory/Libraries.xml"
[AvatarService]
LocalServiceModule = "OpenSim.Services.AvatarService.dll:AvatarService"
@@ -78,7 +78,7 @@
[LoginService]
LocalServiceModule = "OpenSim.Services.LLLoginService.dll:LLLoginService"
UserAccountService = "OpenSim.Services.UserAccountService.dll:UserAccountService"
- GridUserService = "OpenSim.Services.UserAccountService.dll:GridUserService"
+ GridUserService = "OpenSim.Services.UserAccountService.dll:GridUserService"
AuthenticationService = "OpenSim.Services.AuthenticationService.dll:PasswordAuthenticationService"
InventoryService = "OpenSim.Services.InventoryService.dll:XInventoryService"
PresenceService = "OpenSim.Services.PresenceService.dll:PresenceService"
@@ -88,7 +88,6 @@
WelcomeMessage = "Welcome, Avatar!"
-
;; This should always be the very last thing on this file
[Includes]
Include-Common = "config-include/StandaloneCommon.ini"
diff --git a/bin/config-include/StandaloneCommon.ini.example b/bin/config-include/StandaloneCommon.ini.example
index a81039383d..2f021d52cd 100644
--- a/bin/config-include/StandaloneCommon.ini.example
+++ b/bin/config-include/StandaloneCommon.ini.example
@@ -13,8 +13,8 @@
; for more details
;Include-Storage = "config-include/storage/SQLiteLegacyStandalone.ini";
- ; MySql
- ; Uncomment these lines if you want to use mysql storage
+ ; MySql
+ ; Uncomment these lines if you want to use mysql storage
; Change the connection string to your db details
;StorageProvider = "OpenSim.Data.MySQL.dll"
;ConnectionString = "Data Source=localhost;Database=opensim;User ID=opensim;Password=***;Old Guids=true;"
@@ -28,9 +28,9 @@
[Modules]
;; Choose 0 or 1 cache modules, and the corresponding config file, if it exists.
;; Copy the config .example file into your own .ini file and change configs there
-
+
;AssetCaching = "GlynnTuckerAssetCache"
-
+
;AssetCaching = "FlotsamAssetCache"
;Include-FlotsamCache = "config-include/FlotsamCache.ini"
@@ -41,7 +41,7 @@
;FreeswitchServiceInConnector = True
;; Authorization is not on by default, as it depends on external php
- ;AuthorizationServices = "LocalAuthorizationServicesConnector"
+ ;AuthorizationServices = "LocalAuthorizationServicesConnector"
[FreeswitchService]
;; Configuration for the freeswitch service goes here
@@ -49,11 +49,11 @@
[GridService]
;; For in-memory region storage (default)
- StorageProvider = "OpenSim.Data.Null.dll:NullRegionData"
+ StorageProvider = "OpenSim.Data.Null.dll:NullRegionData"
;;--- For MySql region storage (alternative)
- ;StorageProvider = "OpenSim.Data.MySQL.dll:MySqlRegionData"
+ ;StorageProvider = "OpenSim.Data.MySQL.dll:MySqlRegionData"
- ; If HG, do you want this check on the distance to be performed?
+ ; If HG, do you want this check on the distance to be performed?
; Check4096 = "False"
;; Next, we can specify properties of regions, including default and fallback regions
@@ -65,7 +65,7 @@
[LibraryModule]
; Set this if you want to change the name of the OpenSim Library
;LibraryName = "My World's Library"
-
+
[LoginService]
WelcomeMessage = "Welcome, Avatar!"
@@ -77,9 +77,9 @@
[GatekeeperService]
ExternalName = "http://127.0.0.1:9000"
- ; Does this grid allow incoming links to any region in it?
- ; If false, HG TPs happen only to the Default regions specified in [GridService] section
- AllowTeleportsToAnyRegion = true
+ ; Does this grid allow incoming links to any region in it?
+ ; If false, HG TPs happen only to the Default regions specified in [GridService] section
+ AllowTeleportsToAnyRegion = true
[GridInfoService]
; These settings are used to return information on a get_grid_info call.