20#ifndef KERNEL_MACHINE_X86_COMMON_APIC_H
21#define KERNEL_MACHINE_X86_COMMON_APIC_H
26#include "pedigree/kernel/compiler.h"
27#include "pedigree/kernel/machine/IrqManager.h"
28#include "pedigree/kernel/machine/types.h"
29#include "pedigree/kernel/processor/types.h"
46 inline virtual ~Apic() {}
59 virtual void enable(irq_id_t Id,
bool bEnable);
69 Apic& operator=(const Apic&);
72 static Apic m_Instance;
virtual irq_id_t registerHardPciIrqHandler(HardIrqHandler *handler, Device *pDevice, const IrqPolicy &policy)=0
virtual irq_id_t registerIsaIrqHandler(uint8_t irq, IrqHandler *handler, const IrqPolicy &policy)=0
virtual bool unregisterHandler(irq_id_t Id, IrqHandlerBase *handler)=0
virtual irq_id_t registerPciIrqHandler(IrqHandler *handler, Device *pDevice, const IrqPolicy &policy)=0
virtual irq_id_t registerHardIsaIrqHandler(uint8_t irq, HardIrqHandler *handler, const IrqPolicy &policy)=0
#define INITIALISATION_ONLY