quic/qbox
Loading...
Searching...
No Matches
net-backend.h
1/*
2 * Copyright (c) 2022-2023 Qualcomm Innovation Center, Inc. All Rights Reserved.
3 * Author: GreenSocs 2022
4 *
5 * SPDX-License-Identifier: BSD-3-Clause
6 */
7
8#pragma once
9
10#include <macs/payload.h>
11
13{
14protected:
15 void* m_opaque;
16 void (*m_receive)(void* opaque, Payload& frame);
17 int (*m_can_receive)(void* opaque);
18
19public:
21 {
22 m_opaque = NULL;
23 m_receive = NULL;
24 m_can_receive = NULL;
25 }
26
27 virtual void send(Payload& frame) = 0;
28
29 void register_receive(void* opaque, void (*receive)(void* opaque, Payload& frame), int (*can_receive)(void* opaque))
30 {
31 m_opaque = opaque;
32 m_receive = receive;
33 m_can_receive = can_receive;
34 }
35};
Definition net-backend.h:13
Definition payload.h:15
Definition target.h:160