Deleted Added
sdiff udiff text old ( 9745:884ad4638236 ) new ( 9819:e4b12145f4eb )
full compact
1/*
2 * Copyright (c) 2009 Mark D. Hill and David A. Wood
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;

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

51class AbstractController : public ClockedObject, public Consumer
52{
53 public:
54 typedef RubyControllerParams Params;
55 AbstractController(const Params *p);
56 void init();
57 const Params *params() const { return (const Params *)_params; }
58
59 virtual MessageBuffer* getMandatoryQueue() const = 0;
60 virtual const int & getVersion() const = 0;
61 virtual const std::string toString() const = 0; // returns text version of
62 // controller type
63 virtual const std::string getName() const = 0; // return instance name
64 virtual void blockOnQueue(Address, MessageBuffer*) = 0;
65 virtual void unblock(Address) = 0;
66 virtual void initNetworkPtr(Network* net_ptr) = 0;
67 virtual AccessPermission getAccessPermission(const Address& addr) = 0;
68 virtual DataBlock& getDataBlock(const Address& addr) = 0;
69
70 virtual void print(std::ostream & out) const = 0;
71 virtual void printStats(std::ostream & out) const = 0;
72 virtual void wakeup() = 0;
73 virtual void clearStats() = 0;
74 virtual void regStats() = 0;

--- 112 unchanged lines hidden ---