Difference between revisions of "NetMsgTypes"

From BRL-CAD
(Typo fix)
(call the manifest a genericmultistring instead of a 'special')
 
(8 intermediate revisions by 2 users not shown)
Line 7: Line 7:
 
* [[GenericTwoBytesMsg|Generic Two Byte Msg]]  
 
* [[GenericTwoBytesMsg|Generic Two Byte Msg]]  
 
* [[GenericFourBytesMsg|Generic Four Byte Msg]]  
 
* [[GenericFourBytesMsg|Generic Four Byte Msg]]  
* [[GenericEightBytesMsg|Generic Eight 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]]
  
 
----
 
----
Line 18: 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* up-to-date as of 2.9.11
+
'''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 32: Line 33:
 
|style="border: 1px solid #666699;"|RUALIVE
 
|style="border: 1px solid #666699;"|RUALIVE
 
|style="border: 1px solid #666699;"|[[TypeOnlyMsg]]
 
|style="border: 1px solid #666699;"|[[TypeOnlyMsg]]
|style="border: 1px solid #666699;"|
+
|style="border: 1px solid #666699;"|Ping without time info (necessary?)
 
|-
 
|-
 
|style="border: 1px solid #666699;"|0x0043
 
|style="border: 1px solid #666699;"|0x0043
 
|style="border: 1px solid #666699;"|IMALIVE
 
|style="border: 1px solid #666699;"|IMALIVE
 
|style="border: 1px solid #666699;"|[[TypeOnlyMsg]]
 
|style="border: 1px solid #666699;"|[[TypeOnlyMsg]]
|style="border: 1px solid #666699;"|
+
|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;"|Failure
 
|style="border: 1px solid #666699;"|Failure
 
|style="border: 1px solid #666699;"|[[GenericOneByteMsg]]
 
|style="border: 1px solid #666699;"|[[GenericOneByteMsg]]
|style="border: 1px solid #666699;"|
+
|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;"|Success
 
|style="border: 1px solid #666699;"|Success
 
|style="border: 1px solid #666699;"|[[GenericOneByteMsg]]
 
|style="border: 1px solid #666699;"|[[GenericOneByteMsg]]
|style="border: 1px solid #666699;"|
+
|style="border: 1px solid #666699;"|1 byte 'success code'
 
|-
 
|-
 
|style="border: 1px solid #666699;"|0x0060
 
|style="border: 1px solid #666699;"|0x0060
 
|style="border: 1px solid #666699;"|PING
 
|style="border: 1px solid #666699;"|PING
 
|style="border: 1px solid #666699;"|[[GenericEightByteMsg]]
 
|style="border: 1px solid #666699;"|[[GenericEightByteMsg]]
|style="border: 1px solid #666699;"|
+
|style="border: 1px solid #666699;"|8 byte time stamp for start time
 
|-
 
|-
|style="border: 1px solid #666699;"|0x0061
+
|style="border: 1px solid #666699;"|0x0062
 
|style="border: 1px solid #666699;"|PONG
 
|style="border: 1px solid #666699;"|PONG
 
|style="border: 1px solid #666699;"|[[GenericEightByteMsg]]
 
|style="border: 1px solid #666699;"|[[GenericEightByteMsg]]
|style="border: 1px solid #666699;"|
+
|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;"|GS Remote Nodename Set
 
|style="border: 1px solid #666699;"|GS Remote Nodename Set
 
|style="border: 1px solid #666699;"|[[GenericOneStringMsg]]
 
|style="border: 1px solid #666699;"|[[GenericOneStringMsg]]
|style="border: 1px solid #666699;"|
+
|style="border: 1px solid #666699;"|String is the Nodename
 
|-
 
|-
 
|style="border: 1px solid #666699;"|0x0150
 
|style="border: 1px solid #666699;"|0x0150
Line 72: Line 73:
 
|style="border: 1px solid #666699;"|New Node on Network
 
|style="border: 1px solid #666699;"|New Node on Network
 
|style="border: 1px solid #666699;"|[[GenericOneStringMsg]]
 
|style="border: 1px solid #666699;"|[[GenericOneStringMsg]]
|style="border: 1px solid #666699;"|
+
|style="border: 1px solid #666699;"|String is the Nodename
 
|-
 
|-
 
|style="border: 1px solid #666699;"|0x0250
 
|style="border: 1px solid #666699;"|0x0250
Line 87: Line 88:
 
|style="border: 1px solid #666699;"|[[NewSessionReqMsg|New Session Request]]
 
|style="border: 1px solid #666699;"|[[NewSessionReqMsg|New Session Request]]
 
|style="border: 1px solid #666699;"|[[NetMsg]]
 
|style="border: 1px solid #666699;"|[[NetMsg]]
|style="border: 1px solid #666699;"|
+
|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;"|[[SessionInfoMsg|Session Information]]
 
|style="border: 1px solid #666699;"|[[SessionInfoMsg|Session Information]]
 
|style="border: 1px solid #666699;"|[[NetMsg]]
 
|style="border: 1px solid #666699;"|[[NetMsg]]
|style="border: 1px solid #666699;"|
+
|style="border: 1px solid #666699;"|One string, the session UUID
 
|-
 
|-
 
|style="border: 1px solid #666699;"|0x0400
 
|style="border: 1px solid #666699;"|0x0400
Line 98: Line 99:
 
|style="border: 1px solid #666699;"|[[GenericOneStringMsg]]
 
|style="border: 1px solid #666699;"|[[GenericOneStringMsg]]
 
|style="border: 1px solid #666699;"|Has additional custom fields.
 
|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;"|0x0405
 
|style="border: 1px solid #666699;"|[[GeometryManifestMsg|Geometry Manifest]]
 
|style="border: 1px solid #666699;"|[[GeometryManifestMsg|Geometry Manifest]]
|style="border: 1px solid #666699;"|[[NetMsg]]
+
|style="border: 1px solid #666699;"|[[GenericMultiStringMsg]]
|style="border: 1px solid #666699;"|
+
|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;"|[[GeometryChunkMsg|Geometry Chunk]]
 
|style="border: 1px solid #666699;"|[[GeometryChunkMsg|Geometry Chunk]]
 
|style="border: 1px solid #666699;"|[[GenericMultiByteMsg]]
 
|style="border: 1px solid #666699;"|[[GenericMultiByteMsg]]
|style="border: 1px solid #666699;"|
+
|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.


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.