diff options
Diffstat (limited to 'OpenSim')
17 files changed, 99 insertions, 87 deletions
diff --git a/OpenSim/Framework/ClientManager.cs b/OpenSim/Framework/ClientManager.cs index e34c051..629aab5 100644 --- a/OpenSim/Framework/ClientManager.cs +++ b/OpenSim/Framework/ClientManager.cs | |||
@@ -122,7 +122,7 @@ namespace OpenSim.Framework | |||
122 | { | 122 | { |
123 | packet.AgentData.AgentID = client.AgentId; | 123 | packet.AgentData.AgentID = client.AgentId; |
124 | packet.AgentData.SessionID = client.SessionId; | 124 | packet.AgentData.SessionID = client.SessionId; |
125 | client.OutPacket(packet); | 125 | client.OutPacket(packet,ThrottleOutPacketType.Task); |
126 | } | 126 | } |
127 | } | 127 | } |
128 | } | 128 | } |
diff --git a/OpenSim/Framework/Communications/Cache/AssetCache.cs b/OpenSim/Framework/Communications/Cache/AssetCache.cs index 99041c1..edca142 100644 --- a/OpenSim/Framework/Communications/Cache/AssetCache.cs +++ b/OpenSim/Framework/Communications/Cache/AssetCache.cs | |||
@@ -520,7 +520,7 @@ namespace OpenSim.Framework.Communications.Cache | |||
520 | } | 520 | } |
521 | Transfer.TransferInfo.Size = (int) req.AssetInf.Data.Length; | 521 | Transfer.TransferInfo.Size = (int) req.AssetInf.Data.Length; |
522 | Transfer.TransferInfo.TransferID = req.TransferRequestID; | 522 | Transfer.TransferInfo.TransferID = req.TransferRequestID; |
523 | req.RequestUser.OutPacket(Transfer); | 523 | req.RequestUser.OutPacket(Transfer,ThrottleOutPacketType.Asset); |
524 | 524 | ||
525 | if (req.NumPackets == 1) | 525 | if (req.NumPackets == 1) |
526 | { | 526 | { |
@@ -530,7 +530,7 @@ namespace OpenSim.Framework.Communications.Cache | |||
530 | TransferPacket.TransferData.TransferID = req.TransferRequestID; | 530 | TransferPacket.TransferData.TransferID = req.TransferRequestID; |
531 | TransferPacket.TransferData.Data = req.AssetInf.Data; | 531 | TransferPacket.TransferData.Data = req.AssetInf.Data; |
532 | TransferPacket.TransferData.Status = 1; | 532 | TransferPacket.TransferData.Status = 1; |
533 | req.RequestUser.OutPacket(TransferPacket); | 533 | req.RequestUser.OutPacket(TransferPacket, ThrottleOutPacketType.Asset); |
534 | } | 534 | } |
535 | else | 535 | else |
536 | { | 536 | { |
@@ -546,7 +546,7 @@ namespace OpenSim.Framework.Communications.Cache | |||
546 | Array.Copy(req.AssetInf.Data, chunk, req.AssetInf.Data.Length); | 546 | Array.Copy(req.AssetInf.Data, chunk, req.AssetInf.Data.Length); |
547 | TransferPacket.TransferData.Data = chunk; | 547 | TransferPacket.TransferData.Data = chunk; |
548 | TransferPacket.TransferData.Status = 1; | 548 | TransferPacket.TransferData.Status = 1; |
549 | req.RequestUser.OutPacket(TransferPacket); | 549 | req.RequestUser.OutPacket(TransferPacket, ThrottleOutPacketType.Asset); |
550 | } | 550 | } |
551 | else | 551 | else |
552 | { | 552 | { |
@@ -555,7 +555,7 @@ namespace OpenSim.Framework.Communications.Cache | |||
555 | 555 | ||
556 | TransferPacket.TransferData.Data = chunk; | 556 | TransferPacket.TransferData.Data = chunk; |
557 | TransferPacket.TransferData.Status = 0; | 557 | TransferPacket.TransferData.Status = 0; |
558 | req.RequestUser.OutPacket(TransferPacket); | 558 | req.RequestUser.OutPacket(TransferPacket, ThrottleOutPacketType.Asset); |
559 | 559 | ||
560 | TransferPacket = new TransferPacketPacket(); | 560 | TransferPacket = new TransferPacketPacket(); |
561 | TransferPacket.TransferData.Packet = 1; | 561 | TransferPacket.TransferData.Packet = 1; |
@@ -565,7 +565,7 @@ namespace OpenSim.Framework.Communications.Cache | |||
565 | Array.Copy(req.AssetInf.Data, 1000, chunk1, 0, chunk1.Length); | 565 | Array.Copy(req.AssetInf.Data, 1000, chunk1, 0, chunk1.Length); |
566 | TransferPacket.TransferData.Data = chunk1; | 566 | TransferPacket.TransferData.Data = chunk1; |
567 | TransferPacket.TransferData.Status = 1; | 567 | TransferPacket.TransferData.Status = 1; |
568 | req.RequestUser.OutPacket(TransferPacket); | 568 | req.RequestUser.OutPacket(TransferPacket, ThrottleOutPacketType.Asset); |
569 | } | 569 | } |
570 | } | 570 | } |
571 | } | 571 | } |
@@ -741,7 +741,7 @@ namespace OpenSim.Framework.Communications.Cache | |||
741 | im.ImageID.Size = (uint) req.ImageInfo.Data.Length; | 741 | im.ImageID.Size = (uint) req.ImageInfo.Data.Length; |
742 | im.ImageData.Data = req.ImageInfo.Data; | 742 | im.ImageData.Data = req.ImageInfo.Data; |
743 | im.ImageID.Codec = 2; | 743 | im.ImageID.Codec = 2; |
744 | req.RequestUser.OutPacket(im); | 744 | req.RequestUser.OutPacket(im, ThrottleOutPacketType.Texture); |
745 | req.PacketCounter++; | 745 | req.PacketCounter++; |
746 | //req.ImageInfo.l= time; | 746 | //req.ImageInfo.l= time; |
747 | //System.Console.WriteLine("sent texture: " + req.ImageInfo.FullID); | 747 | //System.Console.WriteLine("sent texture: " + req.ImageInfo.FullID); |
@@ -758,7 +758,7 @@ namespace OpenSim.Framework.Communications.Cache | |||
758 | im.ImageData.Data = new byte[600]; | 758 | im.ImageData.Data = new byte[600]; |
759 | Array.Copy(req.ImageInfo.Data, 0, im.ImageData.Data, 0, 600); | 759 | Array.Copy(req.ImageInfo.Data, 0, im.ImageData.Data, 0, 600); |
760 | im.ImageID.Codec = 2; | 760 | im.ImageID.Codec = 2; |
761 | req.RequestUser.OutPacket(im); | 761 | req.RequestUser.OutPacket(im, ThrottleOutPacketType.Texture); |
762 | 762 | ||
763 | req.PacketCounter++; | 763 | req.PacketCounter++; |
764 | //req.ImageInfo.last_used = time; | 764 | //req.ImageInfo.last_used = time; |
@@ -780,7 +780,7 @@ namespace OpenSim.Framework.Communications.Cache | |||
780 | //Console.WriteLine("length= {0} counter= {1} size= {2}",req.ImageInfo.Data.Length, req.PacketCounter, size); | 780 | //Console.WriteLine("length= {0} counter= {1} size= {2}",req.ImageInfo.Data.Length, req.PacketCounter, size); |
781 | im.ImageData.Data = new byte[size]; | 781 | im.ImageData.Data = new byte[size]; |
782 | Array.Copy(req.ImageInfo.Data, 600 + (1000*(req.PacketCounter - 1)), im.ImageData.Data, 0, size); | 782 | Array.Copy(req.ImageInfo.Data, 600 + (1000*(req.PacketCounter - 1)), im.ImageData.Data, 0, size); |
783 | req.RequestUser.OutPacket(im); | 783 | req.RequestUser.OutPacket(im, ThrottleOutPacketType.Texture); |
784 | req.PacketCounter++; | 784 | req.PacketCounter++; |
785 | //req.ImageInfo.last_used = time; | 785 | //req.ImageInfo.last_used = time; |
786 | //System.Console.WriteLine("sent a packet of texture: "+req.ImageInfo.FullID); | 786 | //System.Console.WriteLine("sent a packet of texture: "+req.ImageInfo.FullID); |
diff --git a/OpenSim/Framework/Communications/Cache/AssetTransactions.cs b/OpenSim/Framework/Communications/Cache/AssetTransactions.cs index 9e9ec05..acd57b6 100644 --- a/OpenSim/Framework/Communications/Cache/AssetTransactions.cs +++ b/OpenSim/Framework/Communications/Cache/AssetTransactions.cs | |||
@@ -221,7 +221,7 @@ namespace OpenSim.Framework.Communications.Cache | |||
221 | ConfirmXferPacketPacket newPack = new ConfirmXferPacketPacket(); | 221 | ConfirmXferPacketPacket newPack = new ConfirmXferPacketPacket(); |
222 | newPack.XferID.ID = xferID; | 222 | newPack.XferID.ID = xferID; |
223 | newPack.XferID.Packet = packetID; | 223 | newPack.XferID.Packet = packetID; |
224 | ourClient.OutPacket(newPack); | 224 | ourClient.OutPacket(newPack, ThrottleOutPacketType.Asset); |
225 | if ((packetID & 0x80000000) != 0) | 225 | if ((packetID & 0x80000000) != 0) |
226 | { | 226 | { |
227 | SendCompleteMessage(); | 227 | SendCompleteMessage(); |
@@ -262,7 +262,7 @@ namespace OpenSim.Framework.Communications.Cache | |||
262 | newPack.XferID.VFileID = Asset.FullID; | 262 | newPack.XferID.VFileID = Asset.FullID; |
263 | newPack.XferID.FilePath = 0; | 263 | newPack.XferID.FilePath = 0; |
264 | newPack.XferID.Filename = new byte[0]; | 264 | newPack.XferID.Filename = new byte[0]; |
265 | ourClient.OutPacket(newPack); | 265 | ourClient.OutPacket(newPack, ThrottleOutPacketType.Asset); |
266 | } | 266 | } |
267 | 267 | ||
268 | protected void SendCompleteMessage() | 268 | protected void SendCompleteMessage() |
@@ -272,7 +272,7 @@ namespace OpenSim.Framework.Communications.Cache | |||
272 | newPack.AssetBlock.Type = Asset.Type; | 272 | newPack.AssetBlock.Type = Asset.Type; |
273 | newPack.AssetBlock.Success = true; | 273 | newPack.AssetBlock.Success = true; |
274 | newPack.AssetBlock.UUID = Asset.FullID; | 274 | newPack.AssetBlock.UUID = Asset.FullID; |
275 | ourClient.OutPacket(newPack); | 275 | ourClient.OutPacket(newPack, ThrottleOutPacketType.Asset); |
276 | m_finished = true; | 276 | m_finished = true; |
277 | if (m_createItem) | 277 | if (m_createItem) |
278 | { | 278 | { |
diff --git a/OpenSim/Framework/IClientAPI.cs b/OpenSim/Framework/IClientAPI.cs index 23181bf..0e8b82d 100644 --- a/OpenSim/Framework/IClientAPI.cs +++ b/OpenSim/Framework/IClientAPI.cs | |||
@@ -54,6 +54,16 @@ namespace OpenSim.Framework | |||
54 | StopTyping = 5, | 54 | StopTyping = 5, |
55 | Broadcast = 0xFF | 55 | Broadcast = 0xFF |
56 | } ; | 56 | } ; |
57 | public enum ThrottleOutPacketType : int | ||
58 | { | ||
59 | Resend = 0, | ||
60 | Land = 1, | ||
61 | Wind = 2, | ||
62 | Cloud = 3, | ||
63 | Task = 4, | ||
64 | Texture = 5, | ||
65 | Asset = 6 | ||
66 | } | ||
57 | 67 | ||
58 | /// <summary> | 68 | /// <summary> |
59 | /// ChatFromViewer Arguments | 69 | /// ChatFromViewer Arguments |
@@ -378,7 +388,7 @@ namespace OpenSim.Framework | |||
378 | 388 | ||
379 | uint CircuitCode { get; set; } | 389 | uint CircuitCode { get; set; } |
380 | 390 | ||
381 | void OutPacket(Packet newPack); | 391 | void OutPacket(Packet newPack, ThrottleOutPacketType packType); |
382 | void SendWearables(AvatarWearable[] wearables, int serial); | 392 | void SendWearables(AvatarWearable[] wearables, int serial); |
383 | void SendAppearance(LLUUID agentID, byte[] visualParams, byte[] textureEntry); | 393 | void SendAppearance(LLUUID agentID, byte[] visualParams, byte[] textureEntry); |
384 | void SendStartPingCheck(byte seq); | 394 | void SendStartPingCheck(byte seq); |
diff --git a/OpenSim/Region/ClientStack/ClientView.API.cs b/OpenSim/Region/ClientStack/ClientView.API.cs index 4aaa011..9182b5c 100644 --- a/OpenSim/Region/ClientStack/ClientView.API.cs +++ b/OpenSim/Region/ClientStack/ClientView.API.cs | |||
@@ -189,7 +189,7 @@ namespace OpenSim.Region.ClientStack | |||
189 | handshake.RegionInfo.TerrainDetail3 = regionInfo.EstateSettings.terrainDetail3; | 189 | handshake.RegionInfo.TerrainDetail3 = regionInfo.EstateSettings.terrainDetail3; |
190 | handshake.RegionInfo.CacheID = LLUUID.Random(); //I guess this is for the client to remember an old setting? | 190 | handshake.RegionInfo.CacheID = LLUUID.Random(); //I guess this is for the client to remember an old setting? |
191 | 191 | ||
192 | OutPacket(handshake); | 192 | OutPacket(handshake, ThrottleOutPacketType.Task); |
193 | } | 193 | } |
194 | 194 | ||
195 | /// <summary> | 195 | /// <summary> |
@@ -214,7 +214,7 @@ namespace OpenSim.Region.ClientStack | |||
214 | } | 214 | } |
215 | mov.Data.LookAt = look; | 215 | mov.Data.LookAt = look; |
216 | 216 | ||
217 | OutPacket(mov); | 217 | OutPacket(mov, ThrottleOutPacketType.Task); |
218 | } | 218 | } |
219 | 219 | ||
220 | /// <summary> | 220 | /// <summary> |
@@ -244,7 +244,7 @@ namespace OpenSim.Region.ClientStack | |||
244 | reply.ChatData.OwnerID = fromAgentID; | 244 | reply.ChatData.OwnerID = fromAgentID; |
245 | reply.ChatData.SourceID = fromAgentID; | 245 | reply.ChatData.SourceID = fromAgentID; |
246 | 246 | ||
247 | OutPacket(reply); | 247 | OutPacket(reply, ThrottleOutPacketType.Task); |
248 | } | 248 | } |
249 | 249 | ||
250 | /// <summary> | 250 | /// <summary> |
@@ -274,7 +274,7 @@ namespace OpenSim.Region.ClientStack | |||
274 | msg.MessageBlock.Message = encUTF8.GetBytes(message + "\0"); | 274 | msg.MessageBlock.Message = encUTF8.GetBytes(message + "\0"); |
275 | msg.MessageBlock.BinaryBucket = new byte[0]; | 275 | msg.MessageBlock.BinaryBucket = new byte[0]; |
276 | 276 | ||
277 | OutPacket(msg); | 277 | OutPacket(msg, ThrottleOutPacketType.Task); |
278 | } | 278 | } |
279 | 279 | ||
280 | /// <summary> | 280 | /// <summary> |
@@ -297,7 +297,7 @@ namespace OpenSim.Region.ClientStack | |||
297 | patches[3] = x + 3 + y*16; | 297 | patches[3] = x + 3 + y*16; |
298 | 298 | ||
299 | Packet layerpack = TerrainManager.CreateLandPacket(map, patches); | 299 | Packet layerpack = TerrainManager.CreateLandPacket(map, patches); |
300 | OutPacket(layerpack); | 300 | OutPacket(layerpack, ThrottleOutPacketType.Land); |
301 | } | 301 | } |
302 | } | 302 | } |
303 | } | 303 | } |
@@ -326,7 +326,7 @@ namespace OpenSim.Region.ClientStack | |||
326 | patches[0] = patchx + 0 + patchy*16; | 326 | patches[0] = patchx + 0 + patchy*16; |
327 | 327 | ||
328 | Packet layerpack = TerrainManager.CreateLandPacket(map, patches); | 328 | Packet layerpack = TerrainManager.CreateLandPacket(map, patches); |
329 | OutPacket(layerpack); | 329 | OutPacket(layerpack, ThrottleOutPacketType.Land); |
330 | } | 330 | } |
331 | catch (Exception e) | 331 | catch (Exception e) |
332 | { | 332 | { |
@@ -356,7 +356,7 @@ namespace OpenSim.Region.ClientStack | |||
356 | enablesimpacket.SimulatorInfo.IP += (uint) byteIP[1] << 8; | 356 | enablesimpacket.SimulatorInfo.IP += (uint) byteIP[1] << 8; |
357 | enablesimpacket.SimulatorInfo.IP += (uint) byteIP[0]; | 357 | enablesimpacket.SimulatorInfo.IP += (uint) byteIP[0]; |
358 | enablesimpacket.SimulatorInfo.Port = neighbourPort; | 358 | enablesimpacket.SimulatorInfo.Port = neighbourPort; |
359 | OutPacket(enablesimpacket); | 359 | OutPacket(enablesimpacket, ThrottleOutPacketType.Task); |
360 | } | 360 | } |
361 | 361 | ||
362 | /// <summary> | 362 | /// <summary> |
@@ -401,7 +401,7 @@ namespace OpenSim.Region.ClientStack | |||
401 | //newSimPack.RegionData.SeedCapability = new byte[0]; | 401 | //newSimPack.RegionData.SeedCapability = new byte[0]; |
402 | newSimPack.RegionData.SeedCapability = Helpers.StringToField(capsURL); | 402 | newSimPack.RegionData.SeedCapability = Helpers.StringToField(capsURL); |
403 | 403 | ||
404 | OutPacket(newSimPack); | 404 | OutPacket(newSimPack, ThrottleOutPacketType.Task); |
405 | } | 405 | } |
406 | 406 | ||
407 | public void SendMapBlock(List<MapBlockData> mapBlocks) | 407 | public void SendMapBlock(List<MapBlockData> mapBlocks) |
@@ -423,7 +423,7 @@ namespace OpenSim.Region.ClientStack | |||
423 | mapReply.Data[i].Access = mapBlocks[i].Access; | 423 | mapReply.Data[i].Access = mapBlocks[i].Access; |
424 | mapReply.Data[i].Agents = mapBlocks[i].Agents; | 424 | mapReply.Data[i].Agents = mapBlocks[i].Agents; |
425 | } | 425 | } |
426 | OutPacket(mapReply); | 426 | OutPacket(mapReply, ThrottleOutPacketType.Land); |
427 | } | 427 | } |
428 | 428 | ||
429 | public void SendLocalTeleport(LLVector3 position, LLVector3 lookAt, uint flags) | 429 | public void SendLocalTeleport(LLVector3 position, LLVector3 lookAt, uint flags) |
@@ -434,7 +434,7 @@ namespace OpenSim.Region.ClientStack | |||
434 | tpLocal.Info.LocationID = 2; | 434 | tpLocal.Info.LocationID = 2; |
435 | tpLocal.Info.LookAt = lookAt; | 435 | tpLocal.Info.LookAt = lookAt; |
436 | tpLocal.Info.Position = position; | 436 | tpLocal.Info.Position = position; |
437 | OutPacket(tpLocal); | 437 | OutPacket(tpLocal, ThrottleOutPacketType.Task); |
438 | } | 438 | } |
439 | 439 | ||
440 | public void SendRegionTeleport(ulong regionHandle, byte simAccess, IPEndPoint newRegionEndPoint, uint locationID, | 440 | public void SendRegionTeleport(ulong regionHandle, byte simAccess, IPEndPoint newRegionEndPoint, uint locationID, |
@@ -459,7 +459,7 @@ namespace OpenSim.Region.ClientStack | |||
459 | teleport.Info.SimPort = (ushort) newRegionEndPoint.Port; | 459 | teleport.Info.SimPort = (ushort) newRegionEndPoint.Port; |
460 | teleport.Info.LocationID = 4; | 460 | teleport.Info.LocationID = 4; |
461 | teleport.Info.TeleportFlags = 1 << 4; | 461 | teleport.Info.TeleportFlags = 1 << 4; |
462 | OutPacket(teleport); | 462 | OutPacket(teleport, ThrottleOutPacketType.Task); |
463 | } | 463 | } |
464 | 464 | ||
465 | /// <summary> | 465 | /// <summary> |
@@ -471,7 +471,7 @@ namespace OpenSim.Region.ClientStack | |||
471 | tpCancel.Info.SessionID = m_sessionId; | 471 | tpCancel.Info.SessionID = m_sessionId; |
472 | tpCancel.Info.AgentID = AgentId; | 472 | tpCancel.Info.AgentID = AgentId; |
473 | 473 | ||
474 | OutPacket(tpCancel); | 474 | OutPacket(tpCancel, ThrottleOutPacketType.Task); |
475 | } | 475 | } |
476 | 476 | ||
477 | /// <summary> | 477 | /// <summary> |
@@ -481,7 +481,7 @@ namespace OpenSim.Region.ClientStack | |||
481 | { | 481 | { |
482 | TeleportStartPacket tpStart = new TeleportStartPacket(); | 482 | TeleportStartPacket tpStart = new TeleportStartPacket(); |
483 | tpStart.Info.TeleportFlags = 16; // Teleport via location | 483 | tpStart.Info.TeleportFlags = 16; // Teleport via location |
484 | OutPacket(tpStart); | 484 | OutPacket(tpStart, ThrottleOutPacketType.Task); |
485 | } | 485 | } |
486 | 486 | ||
487 | public void SendMoneyBalance(LLUUID transaction, bool success, byte[] description, int balance) | 487 | public void SendMoneyBalance(LLUUID transaction, bool success, byte[] description, int balance) |
@@ -492,7 +492,7 @@ namespace OpenSim.Region.ClientStack | |||
492 | money.MoneyData.TransactionSuccess = success; | 492 | money.MoneyData.TransactionSuccess = success; |
493 | money.MoneyData.Description = description; | 493 | money.MoneyData.Description = description; |
494 | money.MoneyData.MoneyBalance = balance; | 494 | money.MoneyData.MoneyBalance = balance; |
495 | OutPacket(money); | 495 | OutPacket(money, ThrottleOutPacketType.Task); |
496 | } | 496 | } |
497 | 497 | ||
498 | public void SendStartPingCheck(byte seq) | 498 | public void SendStartPingCheck(byte seq) |
@@ -500,7 +500,7 @@ namespace OpenSim.Region.ClientStack | |||
500 | StartPingCheckPacket pc = new StartPingCheckPacket(); | 500 | StartPingCheckPacket pc = new StartPingCheckPacket(); |
501 | pc.PingID.PingID = seq; | 501 | pc.PingID.PingID = seq; |
502 | pc.Header.Reliable = false; | 502 | pc.Header.Reliable = false; |
503 | OutPacket(pc); | 503 | OutPacket(pc, ThrottleOutPacketType.Task); |
504 | } | 504 | } |
505 | 505 | ||
506 | public void SendKillObject(ulong regionHandle, uint localID) | 506 | public void SendKillObject(ulong regionHandle, uint localID) |
@@ -509,7 +509,7 @@ namespace OpenSim.Region.ClientStack | |||
509 | kill.ObjectData = new KillObjectPacket.ObjectDataBlock[1]; | 509 | kill.ObjectData = new KillObjectPacket.ObjectDataBlock[1]; |
510 | kill.ObjectData[0] = new KillObjectPacket.ObjectDataBlock(); | 510 | kill.ObjectData[0] = new KillObjectPacket.ObjectDataBlock(); |
511 | kill.ObjectData[0].ID = localID; | 511 | kill.ObjectData[0].ID = localID; |
512 | OutPacket(kill); | 512 | OutPacket(kill, ThrottleOutPacketType.Task); |
513 | } | 513 | } |
514 | 514 | ||
515 | public void SendInventoryFolderDetails(LLUUID ownerID, LLUUID folderID, List<InventoryItemBase> items) | 515 | public void SendInventoryFolderDetails(LLUUID ownerID, LLUUID folderID, List<InventoryItemBase> items) |
@@ -563,7 +563,7 @@ namespace OpenSim.Region.ClientStack | |||
563 | count++; | 563 | count++; |
564 | if (i == 40) | 564 | if (i == 40) |
565 | { | 565 | { |
566 | OutPacket(descend); | 566 | OutPacket(descend, ThrottleOutPacketType.Asset); |
567 | 567 | ||
568 | if ((items.Count - count) > 0) | 568 | if ((items.Count - count) > 0) |
569 | { | 569 | { |
@@ -585,7 +585,7 @@ namespace OpenSim.Region.ClientStack | |||
585 | 585 | ||
586 | if (i < 40) | 586 | if (i < 40) |
587 | { | 587 | { |
588 | OutPacket(descend); | 588 | OutPacket(descend, ThrottleOutPacketType.Asset); |
589 | } | 589 | } |
590 | } | 590 | } |
591 | 591 | ||
@@ -637,7 +637,7 @@ namespace OpenSim.Region.ClientStack | |||
637 | FULL_MASK_PERMISSIONS, 1, FULL_MASK_PERMISSIONS, FULL_MASK_PERMISSIONS, | 637 | FULL_MASK_PERMISSIONS, 1, FULL_MASK_PERMISSIONS, FULL_MASK_PERMISSIONS, |
638 | FULL_MASK_PERMISSIONS); | 638 | FULL_MASK_PERMISSIONS); |
639 | 639 | ||
640 | OutPacket(inventoryReply); | 640 | OutPacket(inventoryReply, ThrottleOutPacketType.Asset); |
641 | } | 641 | } |
642 | 642 | ||
643 | public void SendInventoryItemUpdate(InventoryItemBase Item) | 643 | public void SendInventoryItemUpdate(InventoryItemBase Item) |
@@ -677,7 +677,7 @@ namespace OpenSim.Region.ClientStack | |||
677 | FULL_MASK_PERMISSIONS, 1, FULL_MASK_PERMISSIONS, FULL_MASK_PERMISSIONS, | 677 | FULL_MASK_PERMISSIONS, 1, FULL_MASK_PERMISSIONS, FULL_MASK_PERMISSIONS, |
678 | FULL_MASK_PERMISSIONS); | 678 | FULL_MASK_PERMISSIONS); |
679 | 679 | ||
680 | OutPacket(InventoryReply); | 680 | OutPacket(InventoryReply, ThrottleOutPacketType.Asset); |
681 | } | 681 | } |
682 | 682 | ||
683 | public void SendRemoveInventoryItem(LLUUID itemID) | 683 | public void SendRemoveInventoryItem(LLUUID itemID) |
@@ -689,7 +689,7 @@ namespace OpenSim.Region.ClientStack | |||
689 | remove.InventoryData[0] = new RemoveInventoryItemPacket.InventoryDataBlock(); | 689 | remove.InventoryData[0] = new RemoveInventoryItemPacket.InventoryDataBlock(); |
690 | remove.InventoryData[0].ItemID = itemID; | 690 | remove.InventoryData[0].ItemID = itemID; |
691 | 691 | ||
692 | OutPacket(remove); | 692 | OutPacket(remove, ThrottleOutPacketType.Asset); |
693 | } | 693 | } |
694 | 694 | ||
695 | public void SendTaskInventory(LLUUID taskID, short serial, byte[] fileName) | 695 | public void SendTaskInventory(LLUUID taskID, short serial, byte[] fileName) |
@@ -698,7 +698,7 @@ namespace OpenSim.Region.ClientStack | |||
698 | replytask.InventoryData.TaskID = taskID; | 698 | replytask.InventoryData.TaskID = taskID; |
699 | replytask.InventoryData.Serial = serial; | 699 | replytask.InventoryData.Serial = serial; |
700 | replytask.InventoryData.Filename = fileName; | 700 | replytask.InventoryData.Filename = fileName; |
701 | OutPacket(replytask); | 701 | OutPacket(replytask, ThrottleOutPacketType.Asset); |
702 | } | 702 | } |
703 | 703 | ||
704 | public void SendXferPacket(ulong xferID, uint packet, byte[] data) | 704 | public void SendXferPacket(ulong xferID, uint packet, byte[] data) |
@@ -707,11 +707,11 @@ namespace OpenSim.Region.ClientStack | |||
707 | sendXfer.XferID.ID = xferID; | 707 | sendXfer.XferID.ID = xferID; |
708 | sendXfer.XferID.Packet = packet; | 708 | sendXfer.XferID.Packet = packet; |
709 | sendXfer.DataPacket.Data = data; | 709 | sendXfer.DataPacket.Data = data; |
710 | OutPacket(sendXfer); | 710 | OutPacket(sendXfer, ThrottleOutPacketType.Task); |
711 | } | 711 | } |
712 | public void SendAvatarPickerReply(AvatarPickerReplyPacket replyPacket) | 712 | public void SendAvatarPickerReply(AvatarPickerReplyPacket replyPacket) |
713 | { | 713 | { |
714 | OutPacket(replyPacket); | 714 | OutPacket(replyPacket, ThrottleOutPacketType.Task); |
715 | } | 715 | } |
716 | 716 | ||
717 | /// <summary> | 717 | /// <summary> |
@@ -722,7 +722,7 @@ namespace OpenSim.Region.ClientStack | |||
722 | { | 722 | { |
723 | AlertMessagePacket alertPack = new AlertMessagePacket(); | 723 | AlertMessagePacket alertPack = new AlertMessagePacket(); |
724 | alertPack.AlertData.Message = Helpers.StringToField(message); | 724 | alertPack.AlertData.Message = Helpers.StringToField(message); |
725 | OutPacket(alertPack); | 725 | OutPacket(alertPack, ThrottleOutPacketType.Task); |
726 | } | 726 | } |
727 | 727 | ||
728 | /// <summary> | 728 | /// <summary> |
@@ -736,7 +736,7 @@ namespace OpenSim.Region.ClientStack | |||
736 | alertPack.AgentData.AgentID = AgentId; | 736 | alertPack.AgentData.AgentID = AgentId; |
737 | alertPack.AlertData.Message = Helpers.StringToField(message); | 737 | alertPack.AlertData.Message = Helpers.StringToField(message); |
738 | alertPack.AlertData.Modal = modal; | 738 | alertPack.AlertData.Modal = modal; |
739 | OutPacket(alertPack); | 739 | OutPacket(alertPack, ThrottleOutPacketType.Task); |
740 | } | 740 | } |
741 | 741 | ||
742 | public void SendLoadURL(string objectname, LLUUID objectID, LLUUID ownerID, bool groupOwned, string message, | 742 | public void SendLoadURL(string objectname, LLUUID objectID, LLUUID ownerID, bool groupOwned, string message, |
@@ -750,7 +750,7 @@ namespace OpenSim.Region.ClientStack | |||
750 | loadURL.Data.Message = Helpers.StringToField(message); | 750 | loadURL.Data.Message = Helpers.StringToField(message); |
751 | loadURL.Data.URL = Helpers.StringToField(url); | 751 | loadURL.Data.URL = Helpers.StringToField(url); |
752 | 752 | ||
753 | OutPacket(loadURL); | 753 | OutPacket(loadURL, ThrottleOutPacketType.Task); |
754 | } | 754 | } |
755 | 755 | ||
756 | 756 | ||
@@ -762,7 +762,7 @@ namespace OpenSim.Region.ClientStack | |||
762 | preSound.DataBlock[0].ObjectID = objectID; | 762 | preSound.DataBlock[0].ObjectID = objectID; |
763 | preSound.DataBlock[0].OwnerID = ownerID; | 763 | preSound.DataBlock[0].OwnerID = ownerID; |
764 | preSound.DataBlock[0].SoundID = soundID; | 764 | preSound.DataBlock[0].SoundID = soundID; |
765 | OutPacket(preSound); | 765 | OutPacket(preSound, ThrottleOutPacketType.Task); |
766 | } | 766 | } |
767 | 767 | ||
768 | public void SendPlayAttachedSound(LLUUID soundID, LLUUID objectID, LLUUID ownerID, float gain, byte flags) | 768 | public void SendPlayAttachedSound(LLUUID soundID, LLUUID objectID, LLUUID ownerID, float gain, byte flags) |
@@ -774,7 +774,7 @@ namespace OpenSim.Region.ClientStack | |||
774 | sound.DataBlock.Gain = gain; | 774 | sound.DataBlock.Gain = gain; |
775 | sound.DataBlock.Flags = flags; | 775 | sound.DataBlock.Flags = flags; |
776 | 776 | ||
777 | OutPacket(sound); | 777 | OutPacket(sound, ThrottleOutPacketType.Task); |
778 | } | 778 | } |
779 | 779 | ||
780 | public void SendSunPos(LLVector3 sunPos, LLVector3 sunVel) | 780 | public void SendSunPos(LLVector3 sunPos, LLVector3 sunVel) |
@@ -783,7 +783,7 @@ namespace OpenSim.Region.ClientStack | |||
783 | viewertime.TimeInfo.SunDirection = sunPos; | 783 | viewertime.TimeInfo.SunDirection = sunPos; |
784 | viewertime.TimeInfo.SunAngVelocity = sunVel; | 784 | viewertime.TimeInfo.SunAngVelocity = sunVel; |
785 | viewertime.TimeInfo.UsecSinceStart = (ulong) Util.UnixTimeSinceEpoch(); | 785 | viewertime.TimeInfo.UsecSinceStart = (ulong) Util.UnixTimeSinceEpoch(); |
786 | OutPacket(viewertime); | 786 | OutPacket(viewertime, ThrottleOutPacketType.Task); |
787 | } | 787 | } |
788 | 788 | ||
789 | public void SendViewerTime(int phase) | 789 | public void SendViewerTime(int phase) |
@@ -836,7 +836,7 @@ namespace OpenSim.Region.ClientStack | |||
836 | } | 836 | } |
837 | viewertime.TimeInfo.SunAngVelocity = new LLVector3(0, 0.0f, 10.0f); | 837 | viewertime.TimeInfo.SunAngVelocity = new LLVector3(0, 0.0f, 10.0f); |
838 | viewertime.TimeInfo.UsecSinceStart = (ulong) Util.UnixTimeSinceEpoch(); | 838 | viewertime.TimeInfo.UsecSinceStart = (ulong) Util.UnixTimeSinceEpoch(); |
839 | OutPacket(viewertime); | 839 | OutPacket(viewertime, ThrottleOutPacketType.Task); |
840 | } | 840 | } |
841 | 841 | ||
842 | public void SendAvatarProperties(LLUUID avatarID, string aboutText, string bornOn, string charterMember, | 842 | public void SendAvatarProperties(LLUUID avatarID, string aboutText, string bornOn, string charterMember, |
@@ -855,7 +855,7 @@ namespace OpenSim.Region.ClientStack | |||
855 | avatarReply.PropertiesData.ImageID = imageID; | 855 | avatarReply.PropertiesData.ImageID = imageID; |
856 | avatarReply.PropertiesData.ProfileURL = Helpers.StringToField(profileURL); | 856 | avatarReply.PropertiesData.ProfileURL = Helpers.StringToField(profileURL); |
857 | avatarReply.PropertiesData.PartnerID = partnerID; | 857 | avatarReply.PropertiesData.PartnerID = partnerID; |
858 | OutPacket(avatarReply); | 858 | OutPacket(avatarReply, ThrottleOutPacketType.Task); |
859 | } | 859 | } |
860 | 860 | ||
861 | #endregion | 861 | #endregion |
@@ -884,7 +884,7 @@ namespace OpenSim.Region.ClientStack | |||
884 | aw.WearableData[i] = awb; | 884 | aw.WearableData[i] = awb; |
885 | } | 885 | } |
886 | 886 | ||
887 | OutPacket(aw); | 887 | OutPacket(aw, ThrottleOutPacketType.Task); |
888 | } | 888 | } |
889 | 889 | ||
890 | /// <summary> | 890 | /// <summary> |
@@ -909,7 +909,7 @@ namespace OpenSim.Region.ClientStack | |||
909 | 909 | ||
910 | avp.Sender.IsTrial = false; | 910 | avp.Sender.IsTrial = false; |
911 | avp.Sender.ID = agentID; | 911 | avp.Sender.ID = agentID; |
912 | OutPacket(avp); | 912 | OutPacket(avp, ThrottleOutPacketType.Task); |
913 | } | 913 | } |
914 | 914 | ||
915 | public void SendAnimation(LLUUID animID, int seq, LLUUID sourceAgentId) | 915 | public void SendAnimation(LLUUID animID, int seq, LLUUID sourceAgentId) |
@@ -924,7 +924,7 @@ namespace OpenSim.Region.ClientStack | |||
924 | ani.AnimationList[0] = new AvatarAnimationPacket.AnimationListBlock(); | 924 | ani.AnimationList[0] = new AvatarAnimationPacket.AnimationListBlock(); |
925 | ani.AnimationList[0].AnimID = animID; | 925 | ani.AnimationList[0].AnimID = animID; |
926 | ani.AnimationList[0].AnimSequenceID = seq; | 926 | ani.AnimationList[0].AnimSequenceID = seq; |
927 | OutPacket(ani); | 927 | OutPacket(ani, ThrottleOutPacketType.Task); |
928 | } | 928 | } |
929 | 929 | ||
930 | #endregion | 930 | #endregion |
@@ -959,7 +959,7 @@ namespace OpenSim.Region.ClientStack | |||
959 | byte[] pb = pos2.GetBytes(); | 959 | byte[] pb = pos2.GetBytes(); |
960 | Array.Copy(pb, 0, objupdate.ObjectData[0].ObjectData, 16, pb.Length); | 960 | Array.Copy(pb, 0, objupdate.ObjectData[0].ObjectData, 16, pb.Length); |
961 | 961 | ||
962 | OutPacket(objupdate); | 962 | OutPacket(objupdate, ThrottleOutPacketType.Task); |
963 | } | 963 | } |
964 | 964 | ||
965 | /// <summary> | 965 | /// <summary> |
@@ -981,7 +981,7 @@ namespace OpenSim.Region.ClientStack | |||
981 | terse.ObjectData = new ImprovedTerseObjectUpdatePacket.ObjectDataBlock[1]; | 981 | terse.ObjectData = new ImprovedTerseObjectUpdatePacket.ObjectDataBlock[1]; |
982 | terse.ObjectData[0] = terseBlock; | 982 | terse.ObjectData[0] = terseBlock; |
983 | 983 | ||
984 | OutPacket(terse); | 984 | OutPacket(terse, ThrottleOutPacketType.Task); |
985 | } | 985 | } |
986 | 986 | ||
987 | public void SendCoarseLocationUpdate(List<LLVector3> CoarseLocations) | 987 | public void SendCoarseLocationUpdate(List<LLVector3> CoarseLocations) |
@@ -1003,7 +1003,7 @@ namespace OpenSim.Region.ClientStack | |||
1003 | ib.You = -1; | 1003 | ib.You = -1; |
1004 | ib.Prey = -1; | 1004 | ib.Prey = -1; |
1005 | loc.Index = ib; | 1005 | loc.Index = ib; |
1006 | OutPacket(loc); | 1006 | OutPacket(loc, ThrottleOutPacketType.Task); |
1007 | } | 1007 | } |
1008 | 1008 | ||
1009 | #endregion | 1009 | #endregion |
@@ -1027,7 +1027,7 @@ namespace OpenSim.Region.ClientStack | |||
1027 | attach.ObjectData[0].ObjectLocalID = localID; | 1027 | attach.ObjectData[0].ObjectLocalID = localID; |
1028 | attach.ObjectData[0].Rotation = rotation; | 1028 | attach.ObjectData[0].Rotation = rotation; |
1029 | 1029 | ||
1030 | OutPacket(attach); | 1030 | OutPacket(attach, ThrottleOutPacketType.Task); |
1031 | } | 1031 | } |
1032 | 1032 | ||
1033 | public void SendPrimitiveToClient( | 1033 | public void SendPrimitiveToClient( |
@@ -1062,7 +1062,7 @@ namespace OpenSim.Region.ClientStack | |||
1062 | byte[] rot = rotation.GetBytes(); | 1062 | byte[] rot = rotation.GetBytes(); |
1063 | Array.Copy(rot, 0, outPacket.ObjectData[0].ObjectData, 36, rot.Length); | 1063 | Array.Copy(rot, 0, outPacket.ObjectData[0].ObjectData, 36, rot.Length); |
1064 | 1064 | ||
1065 | OutPacket(outPacket); | 1065 | OutPacket(outPacket, ThrottleOutPacketType.Task); |
1066 | } | 1066 | } |
1067 | 1067 | ||
1068 | /// <summary> | 1068 | /// <summary> |
@@ -1084,7 +1084,7 @@ namespace OpenSim.Region.ClientStack | |||
1084 | terse.ObjectData = new ImprovedTerseObjectUpdatePacket.ObjectDataBlock[1]; | 1084 | terse.ObjectData = new ImprovedTerseObjectUpdatePacket.ObjectDataBlock[1]; |
1085 | terse.ObjectData[0] = CreatePrimImprovedBlock(localID, position, rotation, velocity, rotationalvelocity); | 1085 | terse.ObjectData[0] = CreatePrimImprovedBlock(localID, position, rotation, velocity, rotationalvelocity); |
1086 | 1086 | ||
1087 | OutPacket(terse); | 1087 | OutPacket(terse, ThrottleOutPacketType.Task); |
1088 | } | 1088 | } |
1089 | public void SendPrimTerseUpdate(ulong regionHandle, ushort timeDilation, uint localID, LLVector3 position, | 1089 | public void SendPrimTerseUpdate(ulong regionHandle, ushort timeDilation, uint localID, LLVector3 position, |
1090 | LLQuaternion rotation, LLVector3 velocity, LLVector3 rotationalvelocity) | 1090 | LLQuaternion rotation, LLVector3 velocity, LLVector3 rotationalvelocity) |
@@ -1096,7 +1096,7 @@ namespace OpenSim.Region.ClientStack | |||
1096 | terse.ObjectData = new ImprovedTerseObjectUpdatePacket.ObjectDataBlock[1]; | 1096 | terse.ObjectData = new ImprovedTerseObjectUpdatePacket.ObjectDataBlock[1]; |
1097 | terse.ObjectData[0] = CreatePrimImprovedBlock(localID, position, rotation, velocity, rotationalvelocity); | 1097 | terse.ObjectData[0] = CreatePrimImprovedBlock(localID, position, rotation, velocity, rotationalvelocity); |
1098 | 1098 | ||
1099 | OutPacket(terse); | 1099 | OutPacket(terse, ThrottleOutPacketType.Task); |
1100 | } | 1100 | } |
1101 | 1101 | ||
1102 | 1102 | ||
@@ -1432,7 +1432,7 @@ namespace OpenSim.Region.ClientStack | |||
1432 | packet.UUIDNameBlock[0].FirstName = Helpers.StringToField(firstname); | 1432 | packet.UUIDNameBlock[0].FirstName = Helpers.StringToField(firstname); |
1433 | packet.UUIDNameBlock[0].LastName = Helpers.StringToField(lastname); | 1433 | packet.UUIDNameBlock[0].LastName = Helpers.StringToField(lastname); |
1434 | 1434 | ||
1435 | OutPacket(packet); | 1435 | OutPacket(packet, ThrottleOutPacketType.Task); |
1436 | } | 1436 | } |
1437 | 1437 | ||
1438 | #endregion | 1438 | #endregion |
diff --git a/OpenSim/Region/ClientStack/ClientView.PacketHandlers.cs b/OpenSim/Region/ClientStack/ClientView.PacketHandlers.cs index d589a7b..5753018 100644 --- a/OpenSim/Region/ClientStack/ClientView.PacketHandlers.cs +++ b/OpenSim/Region/ClientStack/ClientView.PacketHandlers.cs | |||
@@ -84,7 +84,7 @@ namespace OpenSim.Region.ClientStack | |||
84 | cachedresp.WearableData[i].TextureID = LLUUID.Zero; | 84 | cachedresp.WearableData[i].TextureID = LLUUID.Zero; |
85 | cachedresp.WearableData[i].HostName = new byte[0]; | 85 | cachedresp.WearableData[i].HostName = new byte[0]; |
86 | } | 86 | } |
87 | OutPacket(cachedresp); | 87 | OutPacket(cachedresp, ThrottleOutPacketType.Texture); |
88 | return true; | 88 | return true; |
89 | } | 89 | } |
90 | 90 | ||
@@ -220,7 +220,7 @@ namespace OpenSim.Region.ClientStack | |||
220 | mapReply.LayerData[0].Top = 30000; | 220 | mapReply.LayerData[0].Top = 30000; |
221 | mapReply.LayerData[0].Right = 30000; | 221 | mapReply.LayerData[0].Right = 30000; |
222 | mapReply.LayerData[0].ImageID = new LLUUID("00000000-0000-0000-9999-000000000006"); | 222 | mapReply.LayerData[0].ImageID = new LLUUID("00000000-0000-0000-9999-000000000006"); |
223 | OutPacket(mapReply); | 223 | OutPacket(mapReply, ThrottleOutPacketType.Land); |
224 | } | 224 | } |
225 | 225 | ||
226 | public void RequestMapBlocks(int minX, int minY, int maxX, int maxY) | 226 | public void RequestMapBlocks(int minX, int minY, int maxX, int maxY) |
@@ -250,7 +250,7 @@ namespace OpenSim.Region.ClientStack | |||
250 | mbReply.Data[iii].X = System.Convert.ToUInt16(mp["x"]); | 250 | mbReply.Data[iii].X = System.Convert.ToUInt16(mp["x"]); |
251 | mbReply.Data[iii].Y = System.Convert.ToUInt16(mp["y"]); | 251 | mbReply.Data[iii].Y = System.Convert.ToUInt16(mp["y"]); |
252 | } | 252 | } |
253 | this.OutPacket(mbReply); | 253 | this.OutPacket(mbReply, ThrottleOutPacketType.Land); |
254 | */ | 254 | */ |
255 | } | 255 | } |
256 | } | 256 | } |
diff --git a/OpenSim/Region/ClientStack/ClientView.PacketQueue.cs b/OpenSim/Region/ClientStack/ClientView.PacketQueue.cs index dc7952e..179d02a 100644 --- a/OpenSim/Region/ClientStack/ClientView.PacketQueue.cs +++ b/OpenSim/Region/ClientStack/ClientView.PacketQueue.cs | |||
@@ -197,7 +197,7 @@ namespace OpenSim.Region.ClientStack | |||
197 | StartPingCheckPacket startPing = (StartPingCheckPacket) NewPack; | 197 | StartPingCheckPacket startPing = (StartPingCheckPacket) NewPack; |
198 | CompletePingCheckPacket endPing = new CompletePingCheckPacket(); | 198 | CompletePingCheckPacket endPing = new CompletePingCheckPacket(); |
199 | endPing.PingID.PingID = startPing.PingID.PingID; | 199 | endPing.PingID.PingID = startPing.PingID.PingID; |
200 | OutPacket(endPing); | 200 | OutPacket(endPing, ThrottleOutPacketType.Task); |
201 | } | 201 | } |
202 | else | 202 | else |
203 | { | 203 | { |
@@ -208,7 +208,7 @@ namespace OpenSim.Region.ClientStack | |||
208 | } | 208 | } |
209 | } | 209 | } |
210 | 210 | ||
211 | public virtual void OutPacket(Packet NewPack) | 211 | public virtual void OutPacket(Packet NewPack, ThrottleOutPacketType throttlePacketType) |
212 | { | 212 | { |
213 | QueItem item = new QueItem(); | 213 | QueItem item = new QueItem(); |
214 | item.Packet = NewPack; | 214 | item.Packet = NewPack; |
@@ -228,7 +228,7 @@ namespace OpenSim.Region.ClientStack | |||
228 | ack_it.Packets[0].ID = Pack.Header.Sequence; | 228 | ack_it.Packets[0].ID = Pack.Header.Sequence; |
229 | ack_it.Header.Reliable = false; | 229 | ack_it.Header.Reliable = false; |
230 | 230 | ||
231 | OutPacket(ack_it); | 231 | OutPacket(ack_it, ThrottleOutPacketType.Task); |
232 | } | 232 | } |
233 | /* | 233 | /* |
234 | if (Pack.Header.Reliable) | 234 | if (Pack.Header.Reliable) |
@@ -255,7 +255,7 @@ namespace OpenSim.Region.ClientStack | |||
255 | (now - packet.TickCount) + "ms have passed"); | 255 | (now - packet.TickCount) + "ms have passed"); |
256 | 256 | ||
257 | packet.Header.Resent = true; | 257 | packet.Header.Resent = true; |
258 | OutPacket(packet); | 258 | OutPacket(packet, ThrottleOutPacketType.Resend); |
259 | } | 259 | } |
260 | } | 260 | } |
261 | } | 261 | } |
@@ -289,7 +289,7 @@ namespace OpenSim.Region.ClientStack | |||
289 | } | 289 | } |
290 | 290 | ||
291 | acks.Header.Reliable = false; | 291 | acks.Header.Reliable = false; |
292 | OutPacket(acks); | 292 | OutPacket(acks, ThrottleOutPacketType.Task); |
293 | 293 | ||
294 | PendingAcks.Clear(); | 294 | PendingAcks.Clear(); |
295 | } | 295 | } |
diff --git a/OpenSim/Region/ClientStack/ClientView.ProcessPackets.cs b/OpenSim/Region/ClientStack/ClientView.ProcessPackets.cs index 507bd64..f62407d 100644 --- a/OpenSim/Region/ClientStack/ClientView.ProcessPackets.cs +++ b/OpenSim/Region/ClientStack/ClientView.ProcessPackets.cs | |||
@@ -635,13 +635,13 @@ namespace OpenSim.Region.ClientStack | |||
635 | 635 | ||
636 | TeleportStartPacket tpStart = new TeleportStartPacket(); | 636 | TeleportStartPacket tpStart = new TeleportStartPacket(); |
637 | tpStart.Info.TeleportFlags = 8; // tp via lm | 637 | tpStart.Info.TeleportFlags = 8; // tp via lm |
638 | OutPacket(tpStart); | 638 | OutPacket(tpStart, ThrottleOutPacketType.Task); |
639 | 639 | ||
640 | TeleportProgressPacket tpProgress = new TeleportProgressPacket(); | 640 | TeleportProgressPacket tpProgress = new TeleportProgressPacket(); |
641 | tpProgress.Info.Message = (new ASCIIEncoding()).GetBytes("sending_landmark"); | 641 | tpProgress.Info.Message = (new ASCIIEncoding()).GetBytes("sending_landmark"); |
642 | tpProgress.Info.TeleportFlags = 8; | 642 | tpProgress.Info.TeleportFlags = 8; |
643 | tpProgress.AgentData.AgentID = tpReq.Info.AgentID; | 643 | tpProgress.AgentData.AgentID = tpReq.Info.AgentID; |
644 | OutPacket(tpProgress); | 644 | OutPacket(tpProgress, ThrottleOutPacketType.Task); |
645 | 645 | ||
646 | // Fetch landmark | 646 | // Fetch landmark |
647 | LLUUID lmid = tpReq.Info.LandmarkID; | 647 | LLUUID lmid = tpReq.Info.LandmarkID; |
@@ -658,14 +658,14 @@ namespace OpenSim.Region.ClientStack | |||
658 | tpLocal.Info.TeleportFlags = 8; // Teleport via landmark | 658 | tpLocal.Info.TeleportFlags = 8; // Teleport via landmark |
659 | tpLocal.Info.LocationID = 2; | 659 | tpLocal.Info.LocationID = 2; |
660 | tpLocal.Info.Position = lm.Position; | 660 | tpLocal.Info.Position = lm.Position; |
661 | OutPacket(tpLocal); | 661 | OutPacket(tpLocal, ThrottleOutPacketType.Task); |
662 | } | 662 | } |
663 | else | 663 | else |
664 | { | 664 | { |
665 | TeleportCancelPacket tpCancel = new TeleportCancelPacket(); | 665 | TeleportCancelPacket tpCancel = new TeleportCancelPacket(); |
666 | tpCancel.Info.AgentID = tpReq.Info.AgentID; | 666 | tpCancel.Info.AgentID = tpReq.Info.AgentID; |
667 | tpCancel.Info.SessionID = tpReq.Info.SessionID; | 667 | tpCancel.Info.SessionID = tpReq.Info.SessionID; |
668 | OutPacket(tpCancel); | 668 | OutPacket(tpCancel, ThrottleOutPacketType.Task); |
669 | } | 669 | } |
670 | } | 670 | } |
671 | else | 671 | else |
@@ -675,7 +675,7 @@ namespace OpenSim.Region.ClientStack | |||
675 | TeleportCancelPacket tpCancel = new TeleportCancelPacket(); | 675 | TeleportCancelPacket tpCancel = new TeleportCancelPacket(); |
676 | tpCancel.Info.AgentID = tpReq.Info.AgentID; | 676 | tpCancel.Info.AgentID = tpReq.Info.AgentID; |
677 | tpCancel.Info.SessionID = tpReq.Info.SessionID; | 677 | tpCancel.Info.SessionID = tpReq.Info.SessionID; |
678 | OutPacket(tpCancel); | 678 | OutPacket(tpCancel, ThrottleOutPacketType.Task); |
679 | } | 679 | } |
680 | break; | 680 | break; |
681 | case PacketType.TeleportLocationRequest: | 681 | case PacketType.TeleportLocationRequest: |
@@ -693,7 +693,7 @@ namespace OpenSim.Region.ClientStack | |||
693 | TeleportCancelPacket tpCancel = new TeleportCancelPacket(); | 693 | TeleportCancelPacket tpCancel = new TeleportCancelPacket(); |
694 | tpCancel.Info.SessionID = tpLocReq.AgentData.SessionID; | 694 | tpCancel.Info.SessionID = tpLocReq.AgentData.SessionID; |
695 | tpCancel.Info.AgentID = tpLocReq.AgentData.AgentID; | 695 | tpCancel.Info.AgentID = tpLocReq.AgentData.AgentID; |
696 | OutPacket(tpCancel); | 696 | OutPacket(tpCancel, ThrottleOutPacketType.Task); |
697 | } | 697 | } |
698 | break; | 698 | break; |
699 | 699 | ||
@@ -904,7 +904,7 @@ namespace OpenSim.Region.ClientStack | |||
904 | logReply.InventoryData[0] = new LogoutReplyPacket.InventoryDataBlock(); | 904 | logReply.InventoryData[0] = new LogoutReplyPacket.InventoryDataBlock(); |
905 | logReply.InventoryData[0].ItemID = LLUUID.Zero; | 905 | logReply.InventoryData[0].ItemID = LLUUID.Zero; |
906 | 906 | ||
907 | OutPacket(logReply); | 907 | OutPacket(logReply, ThrottleOutPacketType.Task); |
908 | } | 908 | } |
909 | } | 909 | } |
910 | } | 910 | } |
diff --git a/OpenSim/Region/ClientStack/ClientView.cs b/OpenSim/Region/ClientStack/ClientView.cs index 353a24c..10f880b 100644 --- a/OpenSim/Region/ClientStack/ClientView.cs +++ b/OpenSim/Region/ClientStack/ClientView.cs | |||
@@ -163,7 +163,7 @@ namespace OpenSim.Region.ClientStack | |||
163 | clientPingTimer.Stop(); | 163 | clientPingTimer.Stop(); |
164 | 164 | ||
165 | libsecondlife.Packets.DisableSimulatorPacket disable = new libsecondlife.Packets.DisableSimulatorPacket(); | 165 | libsecondlife.Packets.DisableSimulatorPacket disable = new libsecondlife.Packets.DisableSimulatorPacket(); |
166 | OutPacket(disable); | 166 | OutPacket(disable, ThrottleOutPacketType.Task); |
167 | 167 | ||
168 | ClientThread.Abort(); | 168 | ClientThread.Abort(); |
169 | } | 169 | } |
diff --git a/OpenSim/Region/Environment/EstateManager.cs b/OpenSim/Region/Environment/EstateManager.cs index 9e32b35..c569fc5 100644 --- a/OpenSim/Region/Environment/EstateManager.cs +++ b/OpenSim/Region/Environment/EstateManager.cs | |||
@@ -370,7 +370,7 @@ namespace OpenSim.Region.Environment | |||
370 | regionInfoPacket.RegionInfo.UseEstateSun = !m_regInfo.EstateSettings.useFixedSun; | 370 | regionInfoPacket.RegionInfo.UseEstateSun = !m_regInfo.EstateSettings.useFixedSun; |
371 | regionInfoPacket.RegionInfo.WaterHeight = m_regInfo.EstateSettings.waterHeight; | 371 | regionInfoPacket.RegionInfo.WaterHeight = m_regInfo.EstateSettings.waterHeight; |
372 | 372 | ||
373 | remote_client.OutPacket(regionInfoPacket); | 373 | remote_client.OutPacket(regionInfoPacket, ThrottleOutPacketType.Task); |
374 | } | 374 | } |
375 | 375 | ||
376 | public void sendRegionHandshake(IClientAPI remoteClient) | 376 | public void sendRegionHandshake(IClientAPI remoteClient) |
diff --git a/OpenSim/Region/Environment/LandManagement/Land.cs b/OpenSim/Region/Environment/LandManagement/Land.cs index bf35b57..b566387 100644 --- a/OpenSim/Region/Environment/LandManagement/Land.cs +++ b/OpenSim/Region/Environment/LandManagement/Land.cs | |||
@@ -191,7 +191,7 @@ namespace OpenSim.Region.Environment.LandManagement | |||
191 | landData.selectedPrims; | 191 | landData.selectedPrims; |
192 | updatePacket.ParcelData.UserLocation = landData.userLocation; | 192 | updatePacket.ParcelData.UserLocation = landData.userLocation; |
193 | updatePacket.ParcelData.UserLookAt = landData.userLookAt; | 193 | updatePacket.ParcelData.UserLookAt = landData.userLookAt; |
194 | remote_client.OutPacket((Packet) updatePacket); | 194 | remote_client.OutPacket((Packet) updatePacket, ThrottleOutPacketType.Task); |
195 | } | 195 | } |
196 | 196 | ||
197 | public void updateLandProperties(ParcelPropertiesUpdatePacket packet, IClientAPI remote_client) | 197 | public void updateLandProperties(ParcelPropertiesUpdatePacket packet, IClientAPI remote_client) |
@@ -534,13 +534,14 @@ namespace OpenSim.Region.Environment.LandManagement | |||
534 | resultLocalIDs.RemoveAt(0); | 534 | resultLocalIDs.RemoveAt(0); |
535 | } | 535 | } |
536 | pack.Data = data; | 536 | pack.Data = data; |
537 | remote_client.OutPacket((Packet) pack); | 537 | remote_client.OutPacket((Packet) pack, ThrottleOutPacketType.Task); |
538 | } | 538 | } |
539 | } | 539 | } |
540 | 540 | ||
541 | public void sendLandObjectOwners(IClientAPI remote_client) | 541 | public void sendLandObjectOwners(IClientAPI remote_client) |
542 | { | 542 | { |
543 | Dictionary<LLUUID, int> ownersAndCount = new Dictionary<LLUUID, int>(); | 543 | Dictionary<LLUUID, int> ownersAndCount = new Dictionary<LLUUID, int>(); |
544 | ParcelObjectOwnersReplyPacket pack = new ParcelObjectOwnersReplyPacket(); | ||
544 | foreach (SceneObjectGroup obj in primsOverMe) | 545 | foreach (SceneObjectGroup obj in primsOverMe) |
545 | { | 546 | { |
546 | if (!ownersAndCount.ContainsKey(obj.OwnerID)) | 547 | if (!ownersAndCount.ContainsKey(obj.OwnerID)) |
@@ -570,11 +571,12 @@ namespace OpenSim.Region.Environment.LandManagement | |||
570 | 571 | ||
571 | num++; | 572 | num++; |
572 | } | 573 | } |
573 | 574 | ||
574 | ParcelObjectOwnersReplyPacket pack = new ParcelObjectOwnersReplyPacket(); | ||
575 | pack.Data = dataBlock; | 575 | pack.Data = dataBlock; |
576 | remote_client.OutPacket(pack); | 576 | |
577 | |||
577 | } | 578 | } |
579 | remote_client.OutPacket(pack, ThrottleOutPacketType.Task); | ||
578 | } | 580 | } |
579 | 581 | ||
580 | #endregion | 582 | #endregion |
diff --git a/OpenSim/Region/Environment/LandManagement/LandManager.cs b/OpenSim/Region/Environment/LandManagement/LandManager.cs index a1cfa8a..dfeb36a 100644 --- a/OpenSim/Region/Environment/LandManagement/LandManager.cs +++ b/OpenSim/Region/Environment/LandManagement/LandManager.cs | |||
@@ -441,7 +441,7 @@ namespace OpenSim.Region.Environment.LandManagement | |||
441 | packet = new ParcelOverlayPacket(); | 441 | packet = new ParcelOverlayPacket(); |
442 | packet.ParcelData.Data = byteArray; | 442 | packet.ParcelData.Data = byteArray; |
443 | packet.ParcelData.SequenceID = sequenceID; | 443 | packet.ParcelData.SequenceID = sequenceID; |
444 | remote_client.OutPacket((Packet) packet); | 444 | remote_client.OutPacket((Packet)packet, ThrottleOutPacketType.Task); |
445 | sequenceID++; | 445 | sequenceID++; |
446 | byteArray = new byte[LAND_BLOCKS_PER_PACKET]; | 446 | byteArray = new byte[LAND_BLOCKS_PER_PACKET]; |
447 | } | 447 | } |
diff --git a/OpenSim/Region/Environment/Modules/TextureDownloadModule.cs b/OpenSim/Region/Environment/Modules/TextureDownloadModule.cs index 87d6231..902b669 100644 --- a/OpenSim/Region/Environment/Modules/TextureDownloadModule.cs +++ b/OpenSim/Region/Environment/Modules/TextureDownloadModule.cs | |||
@@ -212,7 +212,7 @@ namespace OpenSim.Region.Environment.Modules | |||
212 | im.ImageID.Size = (uint) m_asset.Data.Length; | 212 | im.ImageID.Size = (uint) m_asset.Data.Length; |
213 | im.ImageData.Data = m_asset.Data; | 213 | im.ImageData.Data = m_asset.Data; |
214 | im.ImageID.Codec = 2; | 214 | im.ImageID.Codec = 2; |
215 | req.RequestUser.OutPacket(im); | 215 | req.RequestUser.OutPacket(im, ThrottleOutPacketType.Texture); |
216 | PacketCounter++; | 216 | PacketCounter++; |
217 | } | 217 | } |
218 | else | 218 | else |
@@ -225,7 +225,7 @@ namespace OpenSim.Region.Environment.Modules | |||
225 | im.ImageData.Data = new byte[600]; | 225 | im.ImageData.Data = new byte[600]; |
226 | Array.Copy(m_asset.Data, 0, im.ImageData.Data, 0, 600); | 226 | Array.Copy(m_asset.Data, 0, im.ImageData.Data, 0, 600); |
227 | im.ImageID.Codec = 2; | 227 | im.ImageID.Codec = 2; |
228 | req.RequestUser.OutPacket(im); | 228 | req.RequestUser.OutPacket(im, ThrottleOutPacketType.Texture); |
229 | PacketCounter++; | 229 | PacketCounter++; |
230 | } | 230 | } |
231 | } | 231 | } |
@@ -239,7 +239,7 @@ namespace OpenSim.Region.Environment.Modules | |||
239 | if (size > 1000) size = 1000; | 239 | if (size > 1000) size = 1000; |
240 | im.ImageData.Data = new byte[size]; | 240 | im.ImageData.Data = new byte[size]; |
241 | Array.Copy(m_asset.Data, 600 + (1000*(PacketCounter - 1)), im.ImageData.Data, 0, size); | 241 | Array.Copy(m_asset.Data, 600 + (1000*(PacketCounter - 1)), im.ImageData.Data, 0, size); |
242 | req.RequestUser.OutPacket(im); | 242 | req.RequestUser.OutPacket(im, ThrottleOutPacketType.Texture); |
243 | PacketCounter++; | 243 | PacketCounter++; |
244 | } | 244 | } |
245 | } | 245 | } |
diff --git a/OpenSim/Region/Environment/Scenes/Scene.cs b/OpenSim/Region/Environment/Scenes/Scene.cs index 87bd0c1..dcba9bd 100644 --- a/OpenSim/Region/Environment/Scenes/Scene.cs +++ b/OpenSim/Region/Environment/Scenes/Scene.cs | |||
@@ -962,7 +962,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
962 | if (presence != null) | 962 | if (presence != null) |
963 | { | 963 | { |
964 | libsecondlife.Packets.DisableSimulatorPacket disable = new libsecondlife.Packets.DisableSimulatorPacket(); | 964 | libsecondlife.Packets.DisableSimulatorPacket disable = new libsecondlife.Packets.DisableSimulatorPacket(); |
965 | presence.ControllingClient.OutPacket(disable); | 965 | presence.ControllingClient.OutPacket(disable, ThrottleOutPacketType.Task); |
966 | } | 966 | } |
967 | } | 967 | } |
968 | } | 968 | } |
diff --git a/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs index 628bd72..38962c1 100644 --- a/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs +++ b/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs | |||
@@ -568,7 +568,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
568 | objPropDB.Name = Helpers.StringToField(RootPart.Name); | 568 | objPropDB.Name = Helpers.StringToField(RootPart.Name); |
569 | objPropDB.Description = Helpers.StringToField(RootPart.Description); | 569 | objPropDB.Description = Helpers.StringToField(RootPart.Description); |
570 | objPropFamilyPack.ObjectData = objPropDB; | 570 | objPropFamilyPack.ObjectData = objPropDB; |
571 | remoteClient.OutPacket(objPropFamilyPack); | 571 | remoteClient.OutPacket(objPropFamilyPack, ThrottleOutPacketType.Task); |
572 | 572 | ||
573 | } | 573 | } |
574 | public void SetPartOwner(SceneObjectPart part, LLUUID cAgentID, LLUUID cGroupID) | 574 | public void SetPartOwner(SceneObjectPart part, LLUUID cAgentID, LLUUID cGroupID) |
@@ -956,7 +956,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
956 | proper.ObjectData[0].EveryoneMask = m_rootPart.EveryoneMask; | 956 | proper.ObjectData[0].EveryoneMask = m_rootPart.EveryoneMask; |
957 | proper.ObjectData[0].BaseMask = m_rootPart.BaseMask; | 957 | proper.ObjectData[0].BaseMask = m_rootPart.BaseMask; |
958 | 958 | ||
959 | client.OutPacket(proper); | 959 | client.OutPacket(proper, ThrottleOutPacketType.Task); |
960 | } | 960 | } |
961 | 961 | ||
962 | /// <summary> | 962 | /// <summary> |
diff --git a/OpenSim/Region/Environment/Scenes/ScenePresence.cs b/OpenSim/Region/Environment/Scenes/ScenePresence.cs index 38523e0..7927de6 100644 --- a/OpenSim/Region/Environment/Scenes/ScenePresence.cs +++ b/OpenSim/Region/Environment/Scenes/ScenePresence.cs | |||
@@ -641,7 +641,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
641 | avatarSitResponse.SitTransform.SitPosition = offset; | 641 | avatarSitResponse.SitTransform.SitPosition = offset; |
642 | avatarSitResponse.SitTransform.SitRotation = new LLQuaternion(0.0f, 0.0f, 0.0f, 1.0f); | 642 | avatarSitResponse.SitTransform.SitRotation = new LLQuaternion(0.0f, 0.0f, 0.0f, 1.0f); |
643 | 643 | ||
644 | remoteClient.OutPacket(avatarSitResponse); | 644 | remoteClient.OutPacket(avatarSitResponse, ThrottleOutPacketType.Task); |
645 | } | 645 | } |
646 | 646 | ||
647 | public void HandleAgentRequestSit(IClientAPI remoteClient, LLUUID agentID, LLUUID targetID, LLVector3 offset) | 647 | public void HandleAgentRequestSit(IClientAPI remoteClient, LLUUID agentID, LLUUID targetID, LLVector3 offset) |
diff --git a/OpenSim/Region/Examples/SimpleApp/MyNpcCharacter.cs b/OpenSim/Region/Examples/SimpleApp/MyNpcCharacter.cs index f78dc8f..f7af2f2 100644 --- a/OpenSim/Region/Examples/SimpleApp/MyNpcCharacter.cs +++ b/OpenSim/Region/Examples/SimpleApp/MyNpcCharacter.cs | |||
@@ -168,7 +168,7 @@ namespace SimpleApp | |||
168 | } | 168 | } |
169 | 169 | ||
170 | 170 | ||
171 | public virtual void OutPacket(Packet newPack) | 171 | public virtual void OutPacket(Packet newPack, ThrottleOutPacketType packType) |
172 | { | 172 | { |
173 | } | 173 | } |
174 | 174 | ||