SystemC Library API Reference Manual
Reference documentation for the Simics SystemC Library.
 
Loading...
Searching...
No Matches
late_binder.h
Go to the documentation of this file.
1/*
2 © 2013 Intel Corporation
3
4 This software and the related documents are Intel copyrighted materials, and
5 your use of them is governed by the express license under which they were
6 provided to you ("License"). Unless the License provides otherwise, you may
7 not use, modify, copy, publish, distribute, disclose or transmit this software
8 or the related documents without Intel's prior written permission.
9
10 This software and the related documents are provided as is, with no express or
11 implied warranties, other than those that are expressly stated in the License.
12*/
13
14#ifndef SIMICS_SYSTEMC_LATE_BINDER_H
15#define SIMICS_SYSTEMC_LATE_BINDER_H
16
17#if INTC_EXT
18#include <sysc/intc/kernel/late_binder_callback.h>
19#include <sysc/intc/communication/unconnected_base.h>
20
21#include <vector>
22
23namespace simics {
24namespace systemc {
25
26class LateBinder : public intc::late_binder_callback_interface {
27 public:
28 virtual ~LateBinder();
29 void bind(sc_core::sc_port_base *port) override;
30
31 private:
32 template <typename T, typename P>
33 void bind_unconnected_port(P *port);
34 template <typename T>
35 bool signal_bind(sc_core::sc_port_base *port);
36 template <unsigned int BUSWIDTH, typename TYPES>
37 bool socket_bind(sc_core::sc_port_base *port);
38
39 std::vector<intc::UnconnectedBase*> unconnected_objects_;
40};
41
42} // namespace systemc
43} // namespace simics
44#endif
45
46#endif
Definition: adapter.h:79