base_socket_if.hh (13521:74fa3ac44057) base_socket_if.hh (13523:de27641700bb)
1/*****************************************************************************
2
3 Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
4 more contributor license agreements. See the NOTICE file distributed
5 with this work for additional information regarding copyright ownership.
6 Accellera licenses this file to you under the Apache License, Version 2.0
7 (the "License"); you may not use this file except in compliance with the
8 License. You may obtain a copy of the License at

--- 7 unchanged lines hidden (view full) ---

16 permissions and limitations under the License.
17
18 *****************************************************************************/
19
20#ifndef __SYSTEMC_EXT_TLM_CORE_2_SOCKETS_BASE_SOCKET_IF_H__
21#define __SYSTEMC_EXT_TLM_CORE_2_SOCKETS_BASE_SOCKET_IF_H__
22
23#include <systemc>
1/*****************************************************************************
2
3 Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
4 more contributor license agreements. See the NOTICE file distributed
5 with this work for additional information regarding copyright ownership.
6 Accellera licenses this file to you under the Apache License, Version 2.0
7 (the "License"); you may not use this file except in compliance with the
8 License. You may obtain a copy of the License at

--- 7 unchanged lines hidden (view full) ---

16 permissions and limitations under the License.
17
18 *****************************************************************************/
19
20#ifndef __SYSTEMC_EXT_TLM_CORE_2_SOCKETS_BASE_SOCKET_IF_H__
21#define __SYSTEMC_EXT_TLM_CORE_2_SOCKETS_BASE_SOCKET_IF_H__
22
23#include <systemc>
24#include <typeindex>
24
25namespace tlm
26{
27
28enum tlm_socket_category
29{
30 TLM_UNKNOWN_SOCKET = 0,
31 TLM_INITIATOR_SOCKET = 0x1,

--- 8 unchanged lines hidden (view full) ---

40class tlm_base_socket_if
41{
42 public:
43 virtual sc_core::sc_port_base &get_port_base() = 0;
44 virtual sc_core::sc_port_base const &get_port_base() const = 0;
45 virtual sc_core::sc_export_base &get_export_base() = 0;
46 virtual sc_core::sc_export_base const &get_export_base() const = 0;
47 virtual unsigned int get_bus_width() const = 0;
25
26namespace tlm
27{
28
29enum tlm_socket_category
30{
31 TLM_UNKNOWN_SOCKET = 0,
32 TLM_INITIATOR_SOCKET = 0x1,

--- 8 unchanged lines hidden (view full) ---

41class tlm_base_socket_if
42{
43 public:
44 virtual sc_core::sc_port_base &get_port_base() = 0;
45 virtual sc_core::sc_port_base const &get_port_base() const = 0;
46 virtual sc_core::sc_export_base &get_export_base() = 0;
47 virtual sc_core::sc_export_base const &get_export_base() const = 0;
48 virtual unsigned int get_bus_width() const = 0;
48 virtual sc_core::sc_type_index get_protocol_types() const = 0;
49 virtual std::type_index get_protocol_types() const = 0;
49 virtual tlm_socket_category get_socket_category() const = 0;
50
51 protected:
52 virtual ~tlm_base_socket_if() {}
53};
54
55} // namespace tlm
56
57#endif // __SYSTEMC_EXT_TLM_CORE_2_SOCKETS_BASE_SOCKET_IF_H__
50 virtual tlm_socket_category get_socket_category() const = 0;
51
52 protected:
53 virtual ~tlm_base_socket_if() {}
54};
55
56} // namespace tlm
57
58#endif // __SYSTEMC_EXT_TLM_CORE_2_SOCKETS_BASE_SOCKET_IF_H__