Difference between revisions of "NetMsgTypes"
From BRL-CAD
(call the manifest a genericmultistring instead of a 'special') |
|||
(57 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
+ | ---- | ||
+ | =NetMsg Generic Templates= | ||
+ | ---- | ||
+ | The GSNet API provides several Template classes to be used or extended from. | ||
− | + | * [[GenericOneByteMsg|Generic One Byte Msg]] | |
− | + | * [[GenericTwoBytesMsg|Generic Two Byte Msg]] | |
− | + | * [[GenericFourBytesMsg|Generic Four Byte Msg]] | |
− | + | * [[GenericEightByteMsg|Generic Eight Byte Msg]] | |
− | + | * [[GenericMultiByteMsg|Generic Multi Byte Msg]] | |
− | + | * [[GenericOneStringMsg|Generic One String Msg]] | |
− | + | * [[GenericMultiStringMsg|Generic Multi-String Msg]] | |
+ | ---- | ||
− | {| | + | =NetMsg MsgTypes= |
− | | | + | ---- |
− | | | + | |
+ | Some NetMsgs will need to have custom bodies. Here is a list of NetMsgs, their related MsgTypes, and links to details on that specific NetMsg: | ||
+ | <br /><br /> | ||
+ | '''NOTE:''' This list is *NOT* up-to-date as of 3.25.11 | ||
+ | <br /><br /> | ||
+ | '''TODO:''' Replace this with Doxy files | ||
+ | <br /><br /> | ||
+ | |||
+ | {|style="border-collapse: separate; border-spacing: 0; border-width: 1px; border-style: solid; border-color: #666699; padding: 0;" | ||
+ | |style="border: 1px solid #666699; background-color: #666699; color: #FFFFFF; width: 90px;"|'''MsgType ID''' | ||
+ | |style="border: 1px solid #666699; background-color: #666699; color: #FFFFFF; width: 200px;"|'''Name''' | ||
+ | |style="border: 1px solid #666699; background-color: #666699; color: #FFFFFF; width: 180px;"|'''Parent Class''' | ||
+ | |style="border: 1px solid #666699; background-color: #666699; color: #FFFFFF;"|'''Additional Info''' | ||
+ | |- | ||
+ | |style="border: 1px solid #666699;"|0x0042 | ||
+ | |style="border: 1px solid #666699;"|RUALIVE | ||
+ | |style="border: 1px solid #666699;"|[[TypeOnlyMsg]] | ||
+ | |style="border: 1px solid #666699;"|Ping without time info (necessary?) | ||
+ | |- | ||
+ | |style="border: 1px solid #666699;"|0x0043 | ||
+ | |style="border: 1px solid #666699;"|IMALIVE | ||
+ | |style="border: 1px solid #666699;"|[[TypeOnlyMsg]] | ||
+ | |style="border: 1px solid #666699;"|Pong without time info (necessary?) | ||
+ | |- | ||
+ | |style="border: 1px solid #666699;"|0x0050 | ||
+ | |style="border: 1px solid #666699;"|Failure | ||
+ | |style="border: 1px solid #666699;"|[[GenericOneByteMsg]] | ||
+ | |style="border: 1px solid #666699;"|1 byte 'error code' | ||
+ | |- | ||
+ | |style="border: 1px solid #666699;"|0x0051 | ||
+ | |style="border: 1px solid #666699;"|Success | ||
+ | |style="border: 1px solid #666699;"|[[GenericOneByteMsg]] | ||
+ | |style="border: 1px solid #666699;"|1 byte 'success code' | ||
+ | |- | ||
+ | |style="border: 1px solid #666699;"|0x0060 | ||
+ | |style="border: 1px solid #666699;"|PING | ||
+ | |style="border: 1px solid #666699;"|[[GenericEightByteMsg]] | ||
+ | |style="border: 1px solid #666699;"|8 byte time stamp for start time | ||
+ | |- | ||
+ | |style="border: 1px solid #666699;"|0x0062 | ||
+ | |style="border: 1px solid #666699;"|PONG | ||
+ | |style="border: 1px solid #666699;"|[[GenericEightByteMsg]] | ||
+ | |style="border: 1px solid #666699;"|8 byte time stamp for start time, dup of the ping value | ||
+ | |- | ||
+ | |style="border: 1px solid #666699;"|0x0100 | ||
+ | |style="border: 1px solid #666699;"|GS Remote Nodename Set | ||
+ | |style="border: 1px solid #666699;"|[[GenericOneStringMsg]] | ||
+ | |style="border: 1px solid #666699;"|String is the Nodename | ||
+ | |- | ||
+ | |style="border: 1px solid #666699;"|0x0150 | ||
+ | |style="border: 1px solid #666699;"|Disconnect Request | ||
+ | |style="border: 1px solid #666699;"|[[TypeOnlyMsg]] | ||
+ | |style="border: 1px solid #666699;"| | ||
+ | |- | ||
+ | |style="border: 1px solid #666699;"|0x0200 | ||
+ | |style="border: 1px solid #666699;"|New Node on Network | ||
+ | |style="border: 1px solid #666699;"|[[GenericOneStringMsg]] | ||
+ | |style="border: 1px solid #666699;"|String is the Nodename | ||
+ | |- | ||
+ | |style="border: 1px solid #666699;"|0x0250 | ||
+ | |style="border: 1px solid #666699;"|Full Nodename List Request | ||
+ | |style="border: 1px solid #666699;"| | ||
+ | |style="border: 1px solid #666699;"|'''''Not Implemented Yet''' | ||
+ | |- | ||
+ | |style="border: 1px solid #666699;"|0x0255 | ||
+ | |style="border: 1px solid #666699;"|Full Nodename List | ||
+ | |style="border: 1px solid #666699;"| | ||
+ | |style="border: 1px solid #666699;"|'''''Not Implemented Yet''' | ||
+ | |- | ||
+ | |style="border: 1px solid #666699;"|0x0300 | ||
+ | |style="border: 1px solid #666699;"|[[NewSessionReqMsg|New Session Request]] | ||
+ | |style="border: 1px solid #666699;"|[[NetMsg]] | ||
+ | |style="border: 1px solid #666699;"|Two strings, username and password | ||
+ | |- | ||
+ | |style="border: 1px solid #666699;"|0x0305 | ||
+ | |style="border: 1px solid #666699;"|[[SessionInfoMsg|Session Information]] | ||
+ | |style="border: 1px solid #666699;"|[[NetMsg]] | ||
+ | |style="border: 1px solid #666699;"|One string, the session UUID | ||
|- | |- | ||
− | | | + | |style="border: 1px solid #666699;"|0x0400 |
− | | | + | |style="border: 1px solid #666699;"|[[GeometryReqMsg|Geometry Request]] |
+ | |style="border: 1px solid #666699;"|[[GenericOneStringMsg]] | ||
+ | |style="border: 1px solid #666699;"|Has additional custom fields. | ||
|- | |- | ||
− | | | + | |style="border: 1px solid #666699;"|0x0401 |
− | | | + | |style="border: 1px solid #666699;"|[[GeometryBoTReqMsg|BoT Geometry Request]] |
+ | |style="border: 1px solid #666699;"|[[GenericOneStringMsg]] | ||
+ | |style="border: 1px solid #666699;"|Requests geometry in BoT format, with exactly one BoT per region. | ||
|- | |- | ||
− | | | + | |style="border: 1px solid #666699;"|0x0402 |
− | | | + | |style="border: 1px solid #666699;"|[[GeometryListReqMsg|Geometry List Request]] |
+ | |style="border: 1px solid #666699;"|[[GenericOneStringMsg]] | ||
+ | |style="border: 1px solid #666699;"|Requests a list of geometry artifacts at given location. | ||
|- | |- | ||
− | | | + | |style="border: 1px solid #666699;"|0x0403 |
− | | | + | |style="border: 1px solid #666699;"|[[GeometryListResMsg|Geometry List Results]] |
+ | |style="border: 1px solid #666699;"|[[GenericMultiStringMsg]] | ||
+ | |style="border: 1px solid #666699;"|Display a list of geometry artifact names. | ||
|- | |- | ||
− | | | + | |style="border: 1px solid #666699;"|0x0405 |
− | | | + | |style="border: 1px solid #666699;"|[[GeometryManifestMsg|Geometry Manifest]] |
+ | |style="border: 1px solid #666699;"|[[GenericMultiStringMsg]] | ||
+ | |style="border: 1px solid #666699;"|List of 'object' names about to be received as chunks. ReUUID is the associated GeometryReqMsg UUID. | ||
|- | |- | ||
− | | | + | |style="border: 1px solid #666699;"|0x0410 |
− | | | + | |style="border: 1px solid #666699;"|[[GeometryChunkMsg|Geometry Chunk]] |
+ | |style="border: 1px solid #666699;"|[[GenericMultiByteMsg]] | ||
+ | |style="border: 1px solid #666699;"|Raw .g information. Chunks can be written to a file to produce a viable V5 .g db. ReUUID is the associated GeometryReqMsg UUID. | ||
|} | |} |
Latest revision as of 11:08, 26 April 2011
NetMsg Generic Templates[edit]
The GSNet API provides several Template classes to be used or extended from.
- Generic One Byte Msg
- Generic Two Byte Msg
- Generic Four Byte Msg
- Generic Eight Byte Msg
- Generic Multi Byte Msg
- Generic One String Msg
- Generic Multi-String Msg
NetMsg MsgTypes[edit]
Some NetMsgs will need to have custom bodies. Here is a list of NetMsgs, their related MsgTypes, and links to details on that specific NetMsg:
NOTE: This list is *NOT* up-to-date as of 3.25.11
TODO: Replace this with Doxy files
MsgType ID | Name | Parent Class | Additional Info |
0x0042 | RUALIVE | TypeOnlyMsg | Ping without time info (necessary?) |
0x0043 | IMALIVE | TypeOnlyMsg | Pong without time info (necessary?) |
0x0050 | Failure | GenericOneByteMsg | 1 byte 'error code' |
0x0051 | Success | GenericOneByteMsg | 1 byte 'success code' |
0x0060 | PING | GenericEightByteMsg | 8 byte time stamp for start time |
0x0062 | PONG | GenericEightByteMsg | 8 byte time stamp for start time, dup of the ping value |
0x0100 | GS Remote Nodename Set | GenericOneStringMsg | String is the Nodename |
0x0150 | Disconnect Request | TypeOnlyMsg | |
0x0200 | New Node on Network | GenericOneStringMsg | String is the Nodename |
0x0250 | Full Nodename List Request | Not Implemented Yet | |
0x0255 | Full Nodename List | Not Implemented Yet | |
0x0300 | New Session Request | NetMsg | Two strings, username and password |
0x0305 | Session Information | NetMsg | One string, the session UUID |
0x0400 | Geometry Request | GenericOneStringMsg | Has additional custom fields. |
0x0401 | BoT Geometry Request | GenericOneStringMsg | Requests geometry in BoT format, with exactly one BoT per region. |
0x0402 | Geometry List Request | GenericOneStringMsg | Requests a list of geometry artifacts at given location. |
0x0403 | Geometry List Results | GenericMultiStringMsg | Display a list of geometry artifact names. |
0x0405 | Geometry Manifest | GenericMultiStringMsg | List of 'object' names about to be received as chunks. ReUUID is the associated GeometryReqMsg UUID. |
0x0410 | Geometry Chunk | GenericMultiByteMsg | Raw .g information. Chunks can be written to a file to produce a viable V5 .g db. ReUUID is the associated GeometryReqMsg UUID. |