virtual inheritance unnecessary here

git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1502 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
This commit is contained in:
hsc
2012-08-22 11:06:46 +00:00
parent 0f498627c7
commit 15b5235987
2 changed files with 19 additions and 19 deletions

View File

@ -30,7 +30,7 @@ public:
* \class BPEvent
* A breakpoint, i.e. a specific instruction address, was reached.
*/
class BPEvent : virtual public BaseEvent {
class BPEvent : public BaseEvent {
protected:
address_t m_TriggerInstrPtr; //!< the address which triggered the event
public:
@ -57,7 +57,7 @@ public:
* A read/write memory access to a physical address with a specific width was
* observed.
*/
class MemAccessEvent : virtual public BaseEvent {
class MemAccessEvent : public BaseEvent {
public:
enum access_type_t {
MEM_UNKNOWN = 0x0, //!< internal initialization flag, indicating an uninitialized state
@ -142,7 +142,7 @@ public:
* An interrupt or trap was observed.
* FIXME: Naming. Interrupts are not exactly "trouble".
*/
class TroubleEvent : virtual public BaseEvent {
class TroubleEvent : public BaseEvent {
private:
/**
* Specific guest system interrupt/trap number that actually
@ -179,7 +179,7 @@ public:
* \class InterruptEvent
* An interrupt was observed.
*/
class InterruptEvent : virtual public TroubleEvent {
class InterruptEvent : public TroubleEvent {
private:
bool m_IsNMI; //!< non maskable interrupt flag
public:
@ -210,7 +210,7 @@ public:
* The guest system emitted explicit guest->experiment communication.
*/
// FIXME: cf. GuestListener
class GuestEvent : virtual public BaseEvent {
class GuestEvent : public BaseEvent {
private:
char m_Data; //!< guest event data
unsigned m_Port; //!< communication port
@ -238,7 +238,7 @@ public:
* \class IOPortEvent
* Observes I/O access on architectures with a separate I/O access mechanism (e.g. IA-32)
*/
class IOPortEvent : virtual public BaseEvent {
class IOPortEvent : public BaseEvent {
private:
unsigned char m_Data;
public:
@ -261,7 +261,7 @@ public:
* \class JumpEvent
* A conditional jump instruction is about to execute.
*/
class JumpEvent : virtual public BaseEvent {
class JumpEvent : public BaseEvent {
private:
unsigned m_OpcodeTrigger;
bool m_FlagTriggered;

View File

@ -109,7 +109,7 @@ public:
* \class BListener
* A Breakpoint listener to observe instruction changes within a given address space.
*/
class BPListener : virtual public BaseListener {
class BPListener : public BaseListener {
private:
BPEvent m_Data;
address_t m_CR3;
@ -156,7 +156,7 @@ public:
* \class BPSingleListener
* A Breakpoint listener to observe specific instruction pointers.
*/
class BPSingleListener : virtual public BPListener {
class BPSingleListener : public BPListener {
private:
address_t m_WatchInstrPtr;
public:
@ -198,7 +198,7 @@ public:
* \class BPRangeListener
* A listener type to observe ranges of instruction pointers.
*/
class BPRangeListener : virtual public BPListener {
class BPRangeListener : public BPListener {
private:
address_t m_WatchStartAddr;
address_t m_WatchEndAddr;
@ -238,7 +238,7 @@ public:
* \class MemAccessListener
* Observes memory read/write accesses.
*/
class MemAccessListener : virtual public BaseListener {
class MemAccessListener : public BaseListener {
private:
//! Specific physical guest system address to watch, or ANY_ADDR.
address_t m_WatchAddr;
@ -328,7 +328,7 @@ public:
* \class MemReadListener
* Observes memory read accesses.
*/
class MemReadListener : virtual public MemAccessListener {
class MemReadListener : public MemAccessListener {
public:
MemReadListener()
: MemAccessListener(MemAccessEvent::MEM_READ) { }
@ -340,7 +340,7 @@ public:
* \class MemWriteListener
* Observes memory write accesses.
*/
class MemWriteListener : virtual public MemAccessListener {
class MemWriteListener : public MemAccessListener {
public:
MemWriteListener()
: MemAccessListener(MemAccessEvent::MEM_READ) { }
@ -352,7 +352,7 @@ public:
* \class TroubleListener
* Observes interrupt/trap activties.
*/
class TroubleListener : virtual public BaseListener {
class TroubleListener : public BaseListener {
private:
TroubleEvent m_Data; //!< event related data, e.g. trap number
/**
@ -404,7 +404,7 @@ public:
* \class InterruptListener
* Observes interrupts of the guest system.
*/
class InterruptListener : virtual public TroubleListener {
class InterruptListener : public TroubleListener {
private:
InterruptEvent m_Data; //!< event related data, e.g. NMI flag
public:
@ -424,7 +424,7 @@ public:
* \class TrapListener
* Observes traps of the guest system.
*/
class TrapListener : virtual public TroubleListener {
class TrapListener : public TroubleListener {
public:
TrapListener() { }
TrapListener(unsigned trap) { addWatchNumber(trap); }
@ -437,7 +437,7 @@ public:
// FIXME: This is not a "clean design" ... IOPortListener looks much like a copy of this class.
// Additionaly, the port is fixed (at least in Bochs) but can be modified using setPort
// (effectless for now).
class GuestListener : virtual public BaseListener {
class GuestListener : public BaseListener {
private:
GuestEvent m_Data;
public:
@ -464,7 +464,7 @@ public:
* \class IOPortListener
* Observes I/O access on architectures with a separate I/O access mechanism (e.g. IA-32)
*/
class IOPortListener : virtual public BaseListener {
class IOPortListener : public BaseListener {
private:
IOPortEvent m_Data;
unsigned m_Port;
@ -518,7 +518,7 @@ public:
* \class JumpListener
* JumpListeners are used to observe conditional jumps (if...else if...else).
*/
class JumpListener : virtual public BaseListener {
class JumpListener : public BaseListener {
private:
JumpEvent m_Data;
public: