Advertisement
Guest User

Untitled

a guest
May 25th, 2015
232
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
D 0.56 KB | None | 0 0
  1. module events;
  2.  
  3. import std.conv,std.stdio;
  4.  
  5. struct Event
  6. {
  7.     T opCast(T)()
  8.     {
  9. //      enforce(T.type == 0);
  10.         return cast(T)this;
  11.     }
  12.     int type;
  13.     int num_elements;
  14. }
  15.  
  16. struct JoystickButtonPressed
  17. {
  18.     int joystick;
  19.     int button;
  20.     bool down;
  21.     int usecs;
  22.     Event event;
  23.     alias event this;
  24. }
  25.  
  26. void send() {
  27.     Event * e;
  28.     auto j = JoystickButtonPressed(0,1,true,0,Event(0,4));
  29.     e = &j.event;
  30.     recieve(e);
  31. }
  32.  
  33. void recieve(Event * e) {
  34.     JoystickButtonPressed * j = to!(JoystickButtonPressed*)(e);
  35.     //writeln("event type %i button %i",j.type,j.button);
  36. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement