-#include "messagebuf.hxx"\r
+#include "msg_0001_hello.hxx"\r
\r
main(int argc, char **argv)\r
{\r
- printf("Hello\n");\r
+ string str;\r
+ FGMPSMsg0001Hello msg1, *msg2;\r
+\r
+ FGMPSMsg0001Hello::registerme();\r
+\r
+ msg1.vermajor = 3;\r
+ msg1.verminor = 7;\r
+ msg1.verpatch = 42;\r
+ msg1.servname = "test";\r
+\r
+ str = msg1.encodemsg();\r
+\r
+ printf("Message ID = %ui\n", msg1.getmessageid());\r
+ printf("major = %u\n", msg1.vermajor);\r
+ printf("minor = %u\n", msg1.verminor);\r
+ printf("patch = %u\n", msg1.verpatch);\r
+ printf("sname = %s\n", msg1.servname.c_str());\r
+\r
+ printf("dump: ");\r
+ for (int i=0; i<str.length(); i++) printf("%02x ", (unsigned char)str[i]);\r
+ printf("\n");\r
+\r
+ try {\r
+ msg2 = (FGMPSMsg0001Hello*)FGMPSMessage::decodemsg(str);\r
+ } catch (FGMPSDataException e) {\r
+ printf("Exception: %s\n", e.what());\r
+ exit(1);\r
+ }\r
+\r
+ printf("Message ID = %u\n", msg2->getmessageid());\r
+ printf("major = %u\n", msg2->vermajor);\r
+ printf("minor = %u\n", msg2->verminor);\r
+ printf("patch = %u\n", msg2->verpatch);\r
+ printf("sname = %s\n", msg2->servname.c_str());\r
+ \r
}\r