DirectedGenerator.hh revision 8655:e4001326a5ba
16973Stjones1@inf.ed.ac.uk/* 26973Stjones1@inf.ed.ac.uk * Copyright (c) 1999-2008 Mark D. Hill and David A. Wood 36973Stjones1@inf.ed.ac.uk * All rights reserved. 46973Stjones1@inf.ed.ac.uk * 56973Stjones1@inf.ed.ac.uk * Redistribution and use in source and binary forms, with or without 66973Stjones1@inf.ed.ac.uk * modification, are permitted provided that the following conditions are 76973Stjones1@inf.ed.ac.uk * met: redistributions of source code must retain the above copyright 86973Stjones1@inf.ed.ac.uk * notice, this list of conditions and the following disclaimer; 96973Stjones1@inf.ed.ac.uk * redistributions in binary form must reproduce the above copyright 106973Stjones1@inf.ed.ac.uk * notice, this list of conditions and the following disclaimer in the 116973Stjones1@inf.ed.ac.uk * documentation and/or other materials provided with the distribution; 126973Stjones1@inf.ed.ac.uk * neither the name of the copyright holders nor the names of its 136973Stjones1@inf.ed.ac.uk * contributors may be used to endorse or promote products derived from 146973Stjones1@inf.ed.ac.uk * this software without specific prior written permission. 156973Stjones1@inf.ed.ac.uk * 166973Stjones1@inf.ed.ac.uk * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 176973Stjones1@inf.ed.ac.uk * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 186973Stjones1@inf.ed.ac.uk * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 196973Stjones1@inf.ed.ac.uk * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 206973Stjones1@inf.ed.ac.uk * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 216973Stjones1@inf.ed.ac.uk * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 226973Stjones1@inf.ed.ac.uk * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 236973Stjones1@inf.ed.ac.uk * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 246973Stjones1@inf.ed.ac.uk * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 256973Stjones1@inf.ed.ac.uk * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 266973Stjones1@inf.ed.ac.uk * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 276973Stjones1@inf.ed.ac.uk */ 286973Stjones1@inf.ed.ac.uk 296973Stjones1@inf.ed.ac.uk#ifndef __CPU_DIRECTEDTEST_DIRECTEDGENERATOR_HH__ 306973Stjones1@inf.ed.ac.uk#define __CPU_DIRECTEDTEST_DIRECTEDGENERATOR_HH__ 316973Stjones1@inf.ed.ac.uk 326973Stjones1@inf.ed.ac.uk#include "cpu/testers/directedtest/DirectedGenerator.hh" 336973Stjones1@inf.ed.ac.uk#include "cpu/testers/directedtest/RubyDirectedTester.hh" 346973Stjones1@inf.ed.ac.uk#include "params/DirectedGenerator.hh" 356973Stjones1@inf.ed.ac.uk#include "sim/sim_object.hh" 366973Stjones1@inf.ed.ac.uk 376973Stjones1@inf.ed.ac.ukclass DirectedGenerator : public SimObject 387049Stjones1@inf.ed.ac.uk{ 397049Stjones1@inf.ed.ac.uk public: 407049Stjones1@inf.ed.ac.uk typedef DirectedGeneratorParams Params; 417049Stjones1@inf.ed.ac.uk DirectedGenerator(const Params *p); 427049Stjones1@inf.ed.ac.uk 437049Stjones1@inf.ed.ac.uk virtual ~DirectedGenerator() {} 447049Stjones1@inf.ed.ac.uk 457049Stjones1@inf.ed.ac.uk virtual bool initiate() = 0; 467049Stjones1@inf.ed.ac.uk virtual void performCallback(uint32_t proc, Addr address) = 0; 477049Stjones1@inf.ed.ac.uk 486973Stjones1@inf.ed.ac.uk void setDirectedTester(RubyDirectedTester* directed_tester); 496973Stjones1@inf.ed.ac.uk 506973Stjones1@inf.ed.ac.uk protected: 516973Stjones1@inf.ed.ac.uk int m_num_cpus; 526973Stjones1@inf.ed.ac.uk RubyDirectedTester* m_directed_tester; 536973Stjones1@inf.ed.ac.uk}; 546973Stjones1@inf.ed.ac.uk 556973Stjones1@inf.ed.ac.uk#endif //__CPU_DIRECTEDTEST_DIRECTEDGENERATOR_HH__ 566973Stjones1@inf.ed.ac.uk 576973Stjones1@inf.ed.ac.uk