Difference between revisions of "NetMsgTypes"
From BRL-CAD
(headline fixes and spacing.) |
(call the manifest a genericmultistring instead of a 'special') |
||
(11 intermediate revisions by 2 users not shown) | |||
Line 2: | Line 2: | ||
=NetMsg Generic Templates= | =NetMsg Generic Templates= | ||
---- | ---- | ||
− | The GSNet | + | The GSNet API provides several Template classes to be used or extended from. |
* [[GenericOneByteMsg|Generic One Byte Msg]] | * [[GenericOneByteMsg|Generic One Byte Msg]] | ||
* [[GenericTwoBytesMsg|Generic Two Byte Msg]] | * [[GenericTwoBytesMsg|Generic Two Byte Msg]] | ||
* [[GenericFourBytesMsg|Generic Four Byte Msg]] | * [[GenericFourBytesMsg|Generic Four Byte Msg]] | ||
+ | * [[GenericEightByteMsg|Generic Eight Byte Msg]] | ||
* [[GenericMultiByteMsg|Generic Multi Byte Msg]] | * [[GenericMultiByteMsg|Generic Multi Byte Msg]] | ||
* [[GenericOneStringMsg|Generic One String Msg]] | * [[GenericOneStringMsg|Generic One String Msg]] | ||
+ | * [[GenericMultiStringMsg|Generic Multi-String Msg]] | ||
---- | ---- | ||
+ | |||
=NetMsg MsgTypes= | =NetMsg MsgTypes= | ||
---- | ---- | ||
Line 16: | Line 19: | ||
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: | 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 /> | <br /><br /> | ||
− | '''NOTE:''' This list is | + | '''NOTE:''' This list is *NOT* up-to-date as of 3.25.11 |
<br /><br /> | <br /><br /> | ||
'''TODO:''' Replace this with Doxy files | '''TODO:''' Replace this with Doxy files | ||
Line 23: | Line 26: | ||
{|style="border-collapse: separate; border-spacing: 0; border-width: 1px; border-style: solid; border-color: #666699; padding: 0;" | {|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: 90px;"|'''MsgType ID''' | ||
− | |style="border: 1px solid #666699; background-color: #666699; color: #FFFFFF; width: | + | |style="border: 1px solid #666699; background-color: #666699; color: #FFFFFF; width: 200px;"|'''Name''' |
− | |style="border: 1px solid #666699; background-color: #666699; color: #FFFFFF;"|''' | + | |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;"|0x0050 | ||
− | |style="border: 1px solid #666699;"| | + | |style="border: 1px solid #666699;"|Failure |
− | |style="border: 1px solid #666699;"| | + | |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;"|0x0051 | ||
− | |style="border: 1px solid #666699;"|[[ | + | |style="border: 1px solid #666699;"|Success |
− | |style="border: 1px solid #666699;"| | + | |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;"|0x0100 | ||
− | |style="border: 1px solid #666699;"|[[ | + | |style="border: 1px solid #666699;"|GS Remote Nodename Set |
− | |style="border: 1px solid #666699;"| | + | |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;"|0x0150 | ||
− | |style="border: 1px solid #666699;"|[[ | + | |style="border: 1px solid #666699;"|Disconnect Request |
− | |style="border: 1px solid #666699;"| | + | |style="border: 1px solid #666699;"|[[TypeOnlyMsg]] |
+ | |style="border: 1px solid #666699;"| | ||
|- | |- | ||
|style="border: 1px solid #666699;"|0x0200 | |style="border: 1px solid #666699;"|0x0200 | ||
− | |style="border: 1px solid #666699;"|[[ | + | |style="border: 1px solid #666699;"|New Node on Network |
− | |style="border: 1px solid #666699;"| | + | |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;"|0x0250 | ||
− | |style="border: 1px solid #666699;"| | + | |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;"|'''''Not Implemented Yet''' | ||
|- | |- | ||
|style="border: 1px solid #666699;"|0x0255 | |style="border: 1px solid #666699;"|0x0255 | ||
− | |style="border: 1px solid #666699;"| | + | |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;"|'''''Not Implemented Yet''' | ||
|- | |- | ||
|style="border: 1px solid #666699;"|0x0300 | |style="border: 1px solid #666699;"|0x0300 | ||
− | |style="border: 1px solid #666699;"|[[ | + | |style="border: 1px solid #666699;"|[[NewSessionReqMsg|New Session Request]] |
− | |style="border: 1px solid #666699;"| | + | |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;"|0x0305 | ||
− | |style="border: 1px solid #666699;"|[[ | + | |style="border: 1px solid #666699;"|[[SessionInfoMsg|Session Information]] |
− | |style="border: 1px solid #666699;"| | + | |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;"| | + | |style="border: 1px solid #666699;"|0x0402 |
− | |style="border: 1px solid #666699;"|[[ | + | |style="border: 1px solid #666699;"|[[GeometryListReqMsg|Geometry List Request]] |
− | |style="border: 1px solid #666699;"| | + | |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;"| | + | |style="border: 1px solid #666699;"|0x0403 |
− | |style="border: 1px solid #666699;"|[[ | + | |style="border: 1px solid #666699;"|[[GeometryListResMsg|Geometry List Results]] |
− | |style="border: 1px solid #666699;"| | + | |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;"|0x0405 | ||
− | |style="border: 1px solid #666699;"|[[ | + | |style="border: 1px solid #666699;"|[[GeometryManifestMsg|Geometry Manifest]] |
− | |style="border: 1px solid #666699;"|'' | + | |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;"|0x0410 | ||
− | |style="border: 1px solid #666699;"|[[ | + | |style="border: 1px solid #666699;"|[[GeometryChunkMsg|Geometry Chunk]] |
− | |style="border: 1px solid #666699;"| | + | |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. |