class io.HidRd

class HidRd {
    // fields

    io.HidRdFlags const m_flags;
    io.HidRdCollection const m_rootCollection;

    // properties

    size_t const indexed property m_reportCount(io.HidReportType reportType);

    io.HidReport const* const indexed property m_reportArray(
        io.HidReportType reportType,
        size_t i
    );

    // construction

    construct();
    destruct();

    // methods

    io.HidReport const* findReport(
        io.HidReportType reportType,
        uint_t reportId
    ) const;

    void clear();

    void parse(
        io.HidDb const* db,
        void const* p,
        size_t size
    );

    void printReports();
    void printCollections();
};