[brlcad-commits] SF.net SVN: brlcad:[33185] rt^3/trunk/src/geometryService/cpp/docs/BME.eap
Open Source Solid Modeling CAD
Brought to you by:
brlcad
From: <dav...@us...> - 2008-11-14 13:14:26
|
Revision: 33185 http://brlcad.svn.sourceforge.net/brlcad/?rev=33185&view=rev Author: davidloman Date: 2008-11-14 13:14:20 +0000 (Fri, 14 Nov 2008) Log Message: ----------- Continuing Architecture Work (GeometryService Namespace): 1) Created AccessManager Class stub. Will provide access controls for Sessions. 2) Architected SessionManager and Session classes: Will provide persistence information for remote and local connections to the GeometryService. 3) Architected CommunicationsManager and AbstractPortal: Provides interconnectivity via multiple means. AbstractPortal is a purely virtual base class that will provide/mandate the essential attributes and operations required of a Portal. Direct Subclasses: NetSockPortal (Used for network connections, leverages libpkg) 4) Architected NetMsg: Basic entity class for holding data just received from or about to be sent to a Portal requiring serialized data. 5) Architected JobManager, JobWorker and AbstractJob: Provides simple Multithreaded Job Management. JobManager will initially be implemented as a Singleton, but having multiple JobManager objects *should* be possible at a later date. AbstractJob is a purely virtual base class that will provide/mandate the essential attributes and operations required of any given Job. Direct Subclasses: NetMsgActionJob and NewSessionJob. 6) Architected NetMsgActionDefManager and NetMsgActionDef: Provides a simplistic command/action implementation. Nearly all NetMsg objects will have a msgType attribute. This msgType attribute will be mapped to an action to be performed in the GS by way of a NetMsgActionDef. AbstractNetMsgActionDef is a purely virtual base class that will provide/mandate the essential attributes and operations required of any given NetMsgActionDef. NetMsgActionDefManager will maintain a std::map that will correlate an int (msgType) to an AbstractNetMsgActionDef object reference. Architecture is this way to support easy extension of the network protocol without hard coding. 7) Architected NetMsgActionJob: The function of this AbstractJob is to: a) Take a NetMsg object in its constructor b) Perform a lookup of NetMsg.msgType on the NetMsgActionDefManager.actionDefs map and get a reference to an AbstractNetMsgActionDef. c) Load the given NetMsg into the AbstractNetMsgActionDef.convert() function and get a reference to a newly created AbstractJob. This new AbstractJob is representative of the original intent of the NetMsg. Modified Paths: -------------- rt^3/trunk/src/geometryService/cpp/docs/BME.eap Modified: rt^3/trunk/src/geometryService/cpp/docs/BME.eap =================================================================== (Binary files differ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |