[xcc] minor performance tweaks
[riscv-isa-sim.git] / riscv / applink.h
1 #ifndef _APPLINK_H
2 #define _APPLINK_H
3
4 #include <stdint.h>
5
6 class sim_t;
7 struct packet;
8 class appserver_link_t
9 {
10 public:
11 appserver_link_t(int _tohost_fd, int _fromhost_fd);
12 void init(sim_t* _sim);
13 void wait_for_start();
14 void wait_for_tohost();
15 void wait_for_fromhost();
16 int wait_for_packet();
17
18 private:
19 sim_t* sim;
20 int tohost_fd;
21 int fromhost_fd;
22 uint16_t seqno;
23
24 void nack(uint16_t seqno);
25 void send_packet(packet* p);
26 };
27
28 #endif