SystemC Library API Reference Manual
Reference documentation for the Simics SystemC Library.
 
Loading...
Searching...
No Matches
gasket_owner.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_SIMICS2TLM_GASKET_OWNER_H
15#define SIMICS_SYSTEMC_SIMICS2TLM_GASKET_OWNER_H
16
20
21namespace simics {
22namespace systemc {
23namespace simics2tlm {
24
30class GasketOwner : public ClassType {
31 public:
33 gasket_->set_type(this);
34 }
35 GasketOwner(const GasketOwner&) = delete;
37 virtual ~GasketOwner() = default;
38
39 void set_gasket(GasketInterface::Ptr gasketInterface) {
40 FATAL_ERROR_IF(!gasketInterface, "GasketOwner initialized with NULL!");
41 // coverity[copy_instead_of_move:SUPPRESS], Ptr is just a pointer
42 gasket_ = gasketInterface;
43 gasket_->set_type(this);
45 }
46 virtual void gasketUpdated() {}
48 return gasket_;
49 }
50 protected:
52};
53
54} // namespace simics2tlm
55} // namespace systemc
56} // namespace simics
57
58#endif
Definition: class_type.h:23
std::shared_ptr< GasketInterface > Ptr
Definition: gasket_interface.h:35
Base class, responsible for handling a gasket.
Definition: gasket_owner.h:30
GasketOwner(const GasketOwner &)=delete
GasketInterface::Ptr gasket() const
Definition: gasket_owner.h:47
GasketOwner & operator=(const GasketOwner &)=delete
void set_gasket(GasketInterface::Ptr gasketInterface)
Definition: gasket_owner.h:39
GasketInterface::Ptr gasket_
Definition: gasket_owner.h:51
GasketOwner()
Definition: gasket_owner.h:32
virtual void gasketUpdated()
Definition: gasket_owner.h:46
Definition: null_gasket.h:40
Definition: adapter.h:79