1 
   2 
   3 
   4 
   5 
   6 
   7 
   8 
   9 
  10 
  11 #ifndef __VPROTOCOL_PESSIMIST_SENDERBASED_TYPES_H__
  12 #define __VPROTOCOL_PESSIMIST_SENDERBASED_TYPES_H__
  13 
  14 #include "ompi_config.h"
  15 #include "vprotocol_pessimist_event.h"
  16 
  17 BEGIN_C_DECLS
  18 
  19 
  20 
  21 
  22 #define SB_USE_PACK_METHOD
  23 #undef SB_USE_PROGRESS_METHOD
  24 #undef SB_USE_CONVERTOR_METHOD
  25 
  26 typedef struct vprotocol_pessimist_sender_based_t
  27 {
  28     int sb_pagesize;        
  29 #ifdef SB_USE_CONVERTOR_METHOD
  30     uintptr_t sb_conv_to_pessimist_offset; 
  31 #endif
  32     int sb_fd;              
  33     off_t sb_offset;        
  34     uintptr_t sb_addr;      
  35     size_t sb_length;       
  36     uintptr_t sb_cursor;    
  37     size_t sb_available;    
  38 
  39 #ifdef SB_USE_PROGRESS_METHOD
  40     opal_list_t sb_sendreq; 
  41 #endif
  42 } vprotocol_pessimist_sender_based_t;
  43 
  44 typedef struct vprotocol_pessimist_sender_based_header_t
  45 {
  46     size_t size;
  47     int dst;
  48     int tag;
  49     uint32_t contextid;
  50     vprotocol_pessimist_clock_t sequence;
  51 } vprotocol_pessimist_sender_based_header_t;
  52 
  53 typedef struct vprotocol_pessimist_sender_based_request_t
  54 {
  55     uintptr_t cursor;
  56     size_t bytes_progressed;
  57     convertor_advance_fct_t conv_advance;
  58     uint32_t conv_flags;
  59 } vprotocol_pessimist_sender_based_request_t;
  60 
  61 
  62 END_C_DECLS
  63 
  64 #endif 
  65