home *** CD-ROM | disk | FTP | other *** search
/ NeXTSTEP 3.3 (Developer)…68k, x86, SPARC, PA-RISC] / NeXTSTEP 3.3 Dev Intel.iso / NextLibrary / Documentation / NextDev / Examples / ServerVsHandler / simple_handler / simple_handler.h < prev    next >
Encoding:
C/C++ Source or Header  |  1995-01-27  |  1.1 KB  |  60 lines

  1. #include <sys/kern_return.h>
  2. #include <sys/port.h>
  3. #include <sys/message.h>
  4.  
  5. #import "simple_types.h"
  6.  
  7. /*
  8.  * Functions to call for handling messages returned
  9.  */
  10. typedef struct {
  11.     void *        arg;        // argument to pass to function
  12.     int        timeout;    // timeout for RPC return msg_send
  13.     kern_return_t    (*puts)(
  14.                 void *        arg,
  15.                 simple_msg_t    string);
  16.     kern_return_t    (*vers)(
  17.                 void *        arg,
  18.                 simple_msg_t    string);
  19. } simple_t;
  20.  
  21. /*
  22.  * Sizes of messages structures for send and receive.
  23.  */
  24. union simple_request {
  25.     struct {
  26.         msg_header_t Head;
  27.         msg_type_long_t stringType;
  28.         simple_msg_t string;
  29.     } puts;
  30.     struct {
  31.         msg_header_t Head;
  32.     } vers;
  33. };
  34. #define SIMPLE_INMSG_SIZE sizeof(union simple_request)
  35.  
  36. union simple_reply {
  37.     struct {
  38.         msg_header_t Head;
  39.         msg_type_t RetCodeType;
  40.         kern_return_t RetCode;
  41.     } puts;
  42.     struct {
  43.         msg_header_t Head;
  44.         msg_type_t RetCodeType;
  45.         kern_return_t RetCode;
  46.         msg_type_long_t stringType;
  47.         simple_msg_t string;
  48.     } vers;
  49. };
  50. #define SIMPLE_OUTMSG_SIZE sizeof(union simple_reply)
  51.  
  52. /*
  53.  * Handler routine to call when receiving messages from midi driver.
  54.  */
  55. kern_return_t simple_handler (
  56.     msg_header_t *msg,
  57.     simple_t *simple);
  58.  
  59.  
  60.