23 lines
547 B
C++
23 lines
547 B
C++
#ifndef IREFRESHMANAGER_H_
|
|
#define IREFRESHMANAGER_H_
|
|
|
|
#include <systemc.h>
|
|
#include "../scheduling/CommandSchedule.h"
|
|
|
|
namespace core {
|
|
|
|
class IRefreshManager
|
|
{
|
|
public:
|
|
virtual ~IRefreshManager(){};
|
|
virtual bool hasCollision(const CommandSchedule& schedule) = 0;
|
|
virtual void scheduleRefresh(tlm::tlm_generic_payload& payload, sc_time time) = 0;
|
|
virtual void reInitialize(tlm::tlm_generic_payload& payload, sc_time time) = 0;
|
|
|
|
virtual bool isInvalidated(tlm::tlm_generic_payload& payload, sc_time time) = 0;
|
|
};
|
|
|
|
} // namespace core
|
|
|
|
#endif
|