[Opensim-dev] proposal for modularity of ClientView

Sean Dague sean at dague.net
Wed Nov 28 22:11:43 UTC 2007


Today I merged all the partial class pieces of ClientView into a single
file (it was always a single class), to make it a bit easier to start to
decompose the function into seperate classes with some better boundary
points.

I think the first thing that can be extracted is a class I'll call
PacketQueue.  PacketQueue has a basic interface of Add(Packet).  Inside
of PacketQueue will be all the throttling code, and the timers
associated with Resends, Acks, etc.

This will move throttling and all the actual packet handling stuff out
of the main clientview, and should make the seperation of concerns
pretty reasonable there.

I think the ned thing to do after that is to build a class with static
methods to build data for packets.  I think Inventory as well as some
others could use to not be inlined in ClientView functions.

Thoughts are appreciated.  I'll stub out PacketQueue and get it
functional on it's own before moving that function out of ClientView, so
that people can see and critique that interface before it actually
changes ClientView.

	-Sean

-- 
__________________________________________________________________

Sean Dague                                       Mid-Hudson Valley
sean at dague dot net                            Linux Users Group
http://dague.net                                 http://mhvlug.org

There is no silver bullet.  Plus, werewolves make better neighbors
than zombies, and they tend to keep the vampire population down.
__________________________________________________________________
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: <http://opensimulator.org/pipermail/opensim-dev/attachments/20071128/625eb9b1/attachment-0001.pgp>


More information about the Opensim-dev mailing list