fifo.hh (13521:74fa3ac44057) fifo.hh (13586:008fe87c1ad4)
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

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

29//
30// The size can be dynamically changed using the resize interface
31//
32// To get an infinite fifo use a -ve size in the constructor.
33// The absolute value of the size is taken as the starting size of the
34// actual physical buffer.
35//
36
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

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

29//
30// The size can be dynamically changed using the resize interface
31//
32// To get an infinite fifo use a -ve size in the constructor.
33// The absolute value of the size is taken as the starting size of the
34// actual physical buffer.
35//
36
37#include "tlm_core/1/req_rsp/channels/fifo/circular_buffer.hh"
38#include "tlm_core/1/req_rsp/interfaces/fifo_ifs.hh"
37#include "../../interfaces/fifo_ifs.hh"
38#include "circular_buffer.hh"
39
40namespace tlm
41{
42
43template <typename T>
44class tlm_fifo : public virtual tlm_fifo_get_if<T>,
45 public virtual tlm_fifo_put_if<T>, public sc_core::sc_prim_channel
46{

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

218 m_num_read = 0;
219 m_num_written = 0;
220 m_num_readable = buffer.used();
221 m_num_read_no_notify = 0;
222}
223
224} // namespace tlm
225
39
40namespace tlm
41{
42
43template <typename T>
44class tlm_fifo : public virtual tlm_fifo_get_if<T>,
45 public virtual tlm_fifo_put_if<T>, public sc_core::sc_prim_channel
46{

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

218 m_num_read = 0;
219 m_num_written = 0;
220 m_num_readable = buffer.used();
221 m_num_read_no_notify = 0;
222}
223
224} // namespace tlm
225
226#include "tlm_core/1/req_rsp/channels/fifo/fifo_peek.hh"
227#include "tlm_core/1/req_rsp/channels/fifo/fifo_put_get.hh"
228#include "tlm_core/1/req_rsp/channels/fifo/fifo_resize.hh"
226#include "fifo_peek.hh"
227#include "fifo_put_get.hh"
228#include "fifo_resize.hh"
229
230#endif /* __SYSTEMC_EXT_TLM_CORE_1_REQ_RSP_CHANNELS_FIFO_FIFO_HH__ */
229
230#endif /* __SYSTEMC_EXT_TLM_CORE_1_REQ_RSP_CHANNELS_FIFO_FIFO_HH__ */