aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ClientStack
diff options
context:
space:
mode:
authorTeravus Ovares2007-11-18 15:54:05 +0000
committerTeravus Ovares2007-11-18 15:54:05 +0000
commit615b40b68b2311433b855f8c1e961a8b71eb9b65 (patch)
treece9620d6f9e59e5e841f9746d738f6a71063eae4 /OpenSim/Region/ClientStack
parentcleaned up some mono compiler warnings (diff)
downloadopensim-SC-615b40b68b2311433b855f8c1e961a8b71eb9b65.zip
opensim-SC-615b40b68b2311433b855f8c1e961a8b71eb9b65.tar.gz
opensim-SC-615b40b68b2311433b855f8c1e961a8b71eb9b65.tar.bz2
opensim-SC-615b40b68b2311433b855f8c1e961a8b71eb9b65.tar.xz
* Refactored IClientAPI.OutPacket to require a second mandatory parameter. This parameter has an enum:int ThrottleOutPacketType and contains types; Resend, Land, Wind, Cloud, Task, Texture, and Asset.
Diffstat (limited to 'OpenSim/Region/ClientStack')
-rw-r--r--OpenSim/Region/ClientStack/ClientView.API.cs86
-rw-r--r--OpenSim/Region/ClientStack/ClientView.PacketHandlers.cs6
-rw-r--r--OpenSim/Region/ClientStack/ClientView.PacketQueue.cs10
-rw-r--r--OpenSim/Region/ClientStack/ClientView.ProcessPackets.cs14
-rw-r--r--OpenSim/Region/ClientStack/ClientView.cs2
5 files changed, 59 insertions, 59 deletions
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 }