/*
    Copyright (C) 2020, The AROS Development Team. All rights reserved.
*/

#include <aros/debug.h>

/* We want all other bases obtained from our base */
#define __NOLIBBASE__

#include <proto/utility.h>

#include <hidd/usb.h>
#include <hidd/hidd.h>
#include <oop/oop.h>
#include <utility/tagitem.h>

#include "debug.h"

#include "poseidon.library.h"

OOP_Object *USBController__Root__New(OOP_Class *cl, OOP_Object *o, struct pRoot_New *msg)
{
    OOP_Object *usbController = (OOP_Object *)OOP_DoSuperMethod(cl, o, (OOP_Msg)msg);
    if (usbController)
    {
        struct USBController *data = OOP_INST_DATA(cl, usbController);
        D(bug ("[USB:Controller] %s: Controller Entry @ 0x%p\n", __func__, data);)
    }
    return usbController;
}

VOID USBController__Root__Dispose(OOP_Class *cl, OOP_Object *o, OOP_Msg msg)
{
    OOP_DoSuperMethod(cl, o, (OOP_Msg)msg);
    return;
}

void USBController__Root__Get(OOP_Class *cl, OOP_Object *o, struct pRoot_Get *msg)
{
    OOP_DoSuperMethod(cl, o, (OOP_Msg)msg);
}
