//! TODO: This file was generated automatically and might contain errors

#pragma once

#include "Actor/Actor.hpp"
#include "Actor/ActorProfile.hpp"
#include "global.h"
#include "types.h"

class ActorUnkIWTS_C4 : public Actor_C4 {
public:
    ActorUnkIWTS_C4(Actor *param1);

    /* 00 */ virtual bool vfunc_00(ActorRef ref, unk32 param2) override;
    /* 04 */ virtual bool vfunc_04() override;
    /* 08 */ virtual void vfunc_08() override;
    /* 0C */ virtual void vfunc_0C(unk32 param1) override;
};

class ActorUnkIWTS : public Actor {
public:
    /* 00 (base) */
    /* 94 */

    ActorUnkIWTS();

    /* 4C */ virtual ~ActorUnkIWTS() override;

    void func_ov084_02150c90(void);
    void func_ov084_02150cfc(void);
    void func_ov084_02150d4c(void);
    void func_ov084_02150df4(void);
    void func_ov084_02150e1c(void);
    void func_ov084_02150e34(void);
    void func_ov084_0215113c(void);
    void func_ov084_02151154(void);
    void func_ov084_02151224(void);
    void func_ov084_02151240(void);
    void func_ov084_02151274(void);
    void func_ov084_021513d0(void);
    void func_ov084_0215141c(void);
    void func_ov084_02151700(void);
    void func_ov084_02151760(void);
    void func_ov084_02151ca8(void);
    void func_ov084_02151ce0(void);
    void func_ov084_02151d18(void);
    void func_ov084_02151d24(void);
    void func_ov084_02151d50(void);
    void func_ov084_02151d68(void);
    void func_ov084_02151d84(void);
    void func_ov084_0215200c(void);
    void func_ov084_021520d4(void);
    void func_ov084_02152160(void);
    void func_ov084_02152174(void);
    void func_ov084_02152238(void);
    void func_ov084_0215237c(void);
    void func_ov084_021523f0(void);
    void func_ov084_021524fc(void);
    void func_ov084_02152cc4(void);
    void func_ov084_02152cd8(void);
    void func_ov084_02152cec(void);
    void func_ov084_02152d10(void);
    void func_ov084_02153018(void);
    bool func_ov084_02153064(ActorRef *pRef, Mat4x3p **param2);
    void func_ov084_021530d4(void);
    void func_ov084_0215315c(void);
    void func_ov084_02153194(void);
    void func_ov084_021531e4(void);
    void func_ov084_021533ec(void);
    void func_ov084_02153448(void);
    void func_ov084_02153480(void);
    void func_ov084_021534e0(void);
    void func_ov084_02153600(void);
    void func_ov084_02153734(void);
    void func_ov084_0215388c(void);
    void func_ov084_02153a60(void);
    void func_ov084_02153c90(void);
    void func_ov084_02153cc8(void);
    void func_ov084_02154000(void);
    void func_ov084_02154080(void);
    void func_ov084_021541f4(void);
    void func_ov084_021543ec(void);
    void func_ov084_02154534(void);
    void func_ov084_021545f0(void);
    void func_ov084_0215472c(void);
    void func_ov084_02154888(void);
    void func_ov084_02154a50(void);
    void func_ov084_02154cd0(void);
    void func_ov084_02154ce4(void);
    void func_ov084_02154e00(void);
    void func_ov084_02154e4c(void);
    void func_ov084_021550c0(void);
    void func_ov084_02155148(void);
    void func_ov084_021553f8(void);
    void func_ov084_02155488(void);
    void func_ov084_021554d8(void);
    void func_ov084_02155628(void);
    void func_ov084_0215564c(void);
    void func_ov084_021556b8(void);
    void func_ov084_021557a4(void);
    void func_ov084_02155904(void);
    void func_ov084_02155918(void);
    void func_ov084_021559bc(void);
    void func_ov084_02155b60(void);
    void func_ov084_02155ba0(void);
    void func_ov084_02155bc0(void);
    void func_ov084_02155c68(void);
    void func_ov084_02156644(void);
    void func_ov084_02156674(void);
    void func_ov084_02156790(void);
    void func_ov084_02156854(void);
    void func_ov084_02156918(void);
    void func_ov084_02156ab8(void);
    void func_ov084_02156ad4(void);
    void func_ov084_02156b14(void);
    void func_ov084_02156f48(void);
    void func_ov084_02157030(void);
    void func_ov084_021570dc(void);
    void func_ov084_02157114(void);
    void func_ov084_02157594(void);
    void func_ov084_02157674(void);
    void func_ov084_0215775c(void);
    void func_ov084_02157828(void);
    void func_ov084_02157a04(void);
    void func_ov084_02157a6c(void);
    void func_ov084_02157c98(void);
    void func_ov084_02157cc0(void);
    void func_ov084_02157d8c(void);
    void func_ov084_02157dc8(void);
    void func_ov084_02157ec8(void);
    void func_ov084_02158508(void);
    void func_ov084_02158518(void);
    void func_ov084_021585bc(void);
    void func_ov084_02158e84(void);
    void func_ov084_02158f40(void);
    void func_ov084_02159600(void);
    void func_ov084_02159718(void);
    void func_ov084_02159794(void);
    void func_ov084_021597d0(void);
    void func_ov084_02159a0c(void);
    void func_ov084_02159a98(void);
    void func_ov084_02159bcc(void);
    void func_ov084_02159bf0(void);
    void func_ov084_02159c1c(void);
    void func_ov084_02159c2c(void);
    void func_ov084_02159c40(void);
    void func_ov084_02159c54(void);
    void func_ov084_02159c70(void);
};

class ActorProfileUnkIWTS : public ActorProfile_Derived1 {
public:
    /* 00 (base) */

    ActorProfileUnkIWTS();
    ~ActorProfileUnkIWTS();

    /* 0C */ virtual Actor *Create();

    static ActorProfileUnkIWTS *GetProfile();
};
