/* * Copyright (C) 2018-2019 Intel Corporation * * SPDX-License-Identifier: MIT * */ #pragma once #include "runtime/command_stream/command_stream_receiver_simulated_common_hw.h" #include "runtime/memory_manager/memory_banks.h" #include "runtime/memory_manager/physical_address_allocator.h" namespace OCLRT { class GraphicsAllocation; template class CommandStreamReceiverSimulatedHw : public CommandStreamReceiverSimulatedCommonHw { protected: using CommandStreamReceiverSimulatedCommonHw::CommandStreamReceiverSimulatedCommonHw; using CommandStreamReceiverSimulatedCommonHw::osContext; public: uint32_t getMemoryBank(GraphicsAllocation *allocation) const { return MemoryBanks::getBank(this->deviceIndex); } int getAddressSpace(int hint) { return AubMemDump::AddressSpaceValues::TraceNonlocal; } PhysicalAddressAllocator *createPhysicalAddressAllocator(const HardwareInfo *hwInfo) { return new PhysicalAddressAllocator(); } void writeMemoryWithAubManager(GraphicsAllocation &graphicsAllocation) override{}; }; } // namespace OCLRT