/* DRW Selection RAM Transfer Interface fns. */

#ifndef drwSlnfnR_H
 #define drwSlnfnR_H

#if defined NAMESPACE_DRWIMPC
  namespace DrWimpC {
#endif

#if defined NAMESPACE_OSLIB
  using namespace OSLib;
#endif

typedef struct drw_selnfnR_str            drw_selnfnR_str;
typedef int  (*drw_seln_accept_ramtfr_fn)(void *tfrinfo,
                                          int tfrsize,
                                          bits filetype,
                                          byte **buffer,
                                          int *buffpos,
                                          int *buffsize);
typedef void (*drw_draggedseln_ramtfr_fn)(wimp_message *wm,
                                          drw_datatfr *dtfr,
                                          int end_of_ram_tfr,
                                          int *tfrsize);
typedef void (*drw_seln_post_ramtfr_fn)(int tfrtypein,
                                        drw_datatfr *dtfr);

struct drw_selnfnR_str {

drw_seln_accept_ramtfr_fn                 acceptramtfr;
drw_draggedseln_ramtfr_fn                 draggedselnramtfr;
drw_seln_post_ramtfr_fn                   postselnramtfr;

};

#if defined NAMESPACE_DRWIMPC
  }
#endif

#endif
