import {CATEGORY_EVENT} from "./Category";
import {AnimationEventNode} from "../../../nodes/event/Animation";
import {AnimationsEventNode} from "../../../nodes/event/Animations";
import {AnyEventNode} from "../../../nodes/event/Any";
import {BlockEventNode} from "../../../nodes/event/Block";
import {ButtonEventNode} from "../../../nodes/event/Button";
import {CameraDeviceOrientationControlsEventNode} from "../../../nodes/event/CameraDeviceOrientationControls";
import {CameraMapControlsEventNode} from "../../../nodes/event/CameraMapControls";
import {CameraOrbitControlsEventNode} from "../../../nodes/event/CameraOrbitControls";
import {CopEventNode} from "../../../nodes/event/Cop";
import {DelayEventNode} from "../../../nodes/event/Delay";
import {EventsEventNode} from "../../../nodes/event/Events";
import {KeyboardEventNode} from "../../../nodes/event/Keyboard";
import {LimitEventNode} from "../../../nodes/event/Limit";
import {MaterialsEventNode} from "../../../nodes/event/Materials";
import {MessageEventNode} from "../../../nodes/event/Message";
import {MouseEventNode} from "../../../nodes/event/Mouse";
import {NodeCookEventNode} from "../../../nodes/event/NodeCook";
import {NullEventNode} from "../../../nodes/event/Null";
import {PointerEventNode} from "../../../nodes/event/Pointer";
import {PostProcessEventNode} from "../../../nodes/event/PostProcess";
import {RaycastEventNode} from "../../../nodes/event/Raycast";
import {SceneEventNode} from "../../../nodes/event/Scene";
import {SetFlagEventNode} from "../../../nodes/event/SetFlag";
import {SetParamEventNode} from "../../../nodes/event/SetParam";
import {SequenceEventNode} from "../../../nodes/event/Sequence";
import {TimerEventNode} from "../../../nodes/event/Timer";
import {ViewerEventNode} from "../../../nodes/event/Viewer";
export class EventRegister {
  static run(poly) {
    poly.registerNode(AnimationEventNode, CATEGORY_EVENT.SCENE);
    poly.registerNode(AnyEventNode, CATEGORY_EVENT.MISC);
    poly.registerNode(BlockEventNode, CATEGORY_EVENT.MISC);
    poly.registerNode(ButtonEventNode, CATEGORY_EVENT.MISC);
    poly.registerNode(CameraDeviceOrientationControlsEventNode, CATEGORY_EVENT.CAMERA);
    poly.registerNode(CameraMapControlsEventNode, CATEGORY_EVENT.CAMERA);
    poly.registerNode(CameraOrbitControlsEventNode, CATEGORY_EVENT.CAMERA);
    poly.registerNode(DelayEventNode, CATEGORY_EVENT.MISC);
    poly.registerNode(KeyboardEventNode, CATEGORY_EVENT.INPUT);
    poly.registerNode(LimitEventNode, CATEGORY_EVENT.MISC);
    poly.registerNode(MessageEventNode, CATEGORY_EVENT.MISC);
    poly.registerNode(MouseEventNode, CATEGORY_EVENT.INPUT);
    poly.registerNode(NodeCookEventNode, CATEGORY_EVENT.SCENE);
    poly.registerNode(NullEventNode, CATEGORY_EVENT.MISC);
    poly.registerNode(PointerEventNode, CATEGORY_EVENT.INPUT);
    poly.registerNode(RaycastEventNode, CATEGORY_EVENT.MISC);
    poly.registerNode(SceneEventNode, CATEGORY_EVENT.SCENE);
    poly.registerNode(SetFlagEventNode, CATEGORY_EVENT.SCENE);
    poly.registerNode(SetParamEventNode, CATEGORY_EVENT.SCENE);
    poly.registerNode(SequenceEventNode, CATEGORY_EVENT.MISC);
    poly.registerNode(TimerEventNode, CATEGORY_EVENT.MISC);
    poly.registerNode(ViewerEventNode, CATEGORY_EVENT.MISC);
    poly.registerNode(AnimationsEventNode, CATEGORY_EVENT.NETWORK);
    poly.registerNode(CopEventNode, CATEGORY_EVENT.NETWORK);
    poly.registerNode(EventsEventNode, CATEGORY_EVENT.NETWORK);
    poly.registerNode(MaterialsEventNode, CATEGORY_EVENT.NETWORK);
    poly.registerNode(PostProcessEventNode, CATEGORY_EVENT.NETWORK);
  }
}
