1 /* ..... BEGIN INCLUDE FILE ... iodd_comm.incl.pl1 ..... */ 2 3 /* structure used by a driver to send a command/request to the coordinator */ 4 5 dcl comm_ptr ptr; 6 7 dcl 1 iodd_comm aligned based (comm_ptr), 8 2 ack_chan fixed bin (71), /* IPC event channel for coord to return status code */ 9 2 type fixed bin, /* command/request type code 10 0 = reserved [done & wait (direct - special ev chan)] 11 1 = reserved [done & next (also direct)] 12 2 = restart - single or series 13 3 = save - single or series 14 4 = reserved [driver logout (direct)] 15 5 = reserved [get cmd ev chan (direct)] 16 6 = next_req - run a given request next 17 7 = restart_q - back to first messages in my queues 18 */ 19 2 type_ext bit (36), /* defined by each command type */ 20 2 minor_idx fixed bin, /* index of minor device sending this request */ 21 2 dvc_idx fixed bin, /* index of associated device class */ 22 2 request_no fixed bin, /* request number for save/restart */ 23 2 queue_no fixed bin, /* specified queue for next_req */ 24 2 user_id char (32), /* sender id for next_req */ 25 2 req_id char (24), /* request id from -id arg */ 26 2 pad_space (3) fixed bin, 27 2 data_len fixed bin, /* length of following string */ 28 2 data char (256 refer (iodd_comm.data_len)); /* data for command type if needed */ 29 30 dcl restart fixed bin int static options (constant) init (2); 31 dcl save fixed bin int static options (constant) init (3); 32 dcl next_req fixed bin int static options (constant) init (6); 33 dcl restart_q fixed bin int static options (constant) init (7); 34 35 36 /* ..... END INCLUDE FILE ... iodd_comm.incl.pl1 ..... */