All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.jnngl.totalcomputers.motion.MotionCaptureDesc Maven / Gradle / Ivy

package com.jnngl.totalcomputers.motion;

import com.jnngl.totalcomputers.system.RequiresAPI;

@RequiresAPI(apiLevel = 3)
public class MotionCaptureDesc {

    private MovementCaptureEvent requiresMovementCapture = null;
    private GazeDirectionCaptureEvent requiresGazeDirectionCapture = null;
    private JumpCaptureEvent requiresJumpCapture = null;
    private SneakCaptureEvent requiresSneakCapture = null;
    private SlotCaptureEvent requiresSlotCapture = null;
    private ItemDropEvent requiresItemDropCapture = null;

    private MotionCaptureDesc() {}

    public static MotionCaptureDesc create() {
        return new MotionCaptureDesc();
    }

    public MotionCaptureDesc requiresMovementCapture(MovementCaptureEvent event) {
        requiresMovementCapture = event;
        return this;
    }

    public MotionCaptureDesc requiresGazeDirectionCapture(GazeDirectionCaptureEvent event) {
        requiresGazeDirectionCapture = event;
        return this;
    }

    public MotionCaptureDesc requiresJumpCapture(JumpCaptureEvent event) {
        requiresJumpCapture = event;
        return this;
    }

    public MotionCaptureDesc requiresSneakCapture(SneakCaptureEvent event) {
        requiresSneakCapture = event;
        return this;
    }

    public MotionCaptureDesc requiresSlotCapture(SlotCaptureEvent event) {
        requiresSlotCapture = event;
        return this;
    }

    public MotionCaptureDesc requiresItemDropCapture(ItemDropEvent event) {
        requiresItemDropCapture = event;
        return this;
    }

    public boolean requiresMovementCapture() {
        return requiresMovementCapture != null;
    }

    public boolean requiresGazeDirectionCapture() {
        return requiresGazeDirectionCapture != null;
    }

    public boolean requiresJumpCapture() {
        return requiresJumpCapture != null;
    }

    public boolean requiresSneakCapture() {
        return requiresSneakCapture != null;
    }

    public boolean requiresSlotCapture() {
        return requiresSlotCapture != null;
    }

    public boolean requiresItemDropCapture() {
        return requiresItemDropCapture != null;
    }

    public MovementCaptureEvent movementEvent() {
        return requiresMovementCapture;
    }

    public GazeDirectionCaptureEvent gazeDirectionEvent() {
        return requiresGazeDirectionCapture;
    }

    public JumpCaptureEvent jumpEvent() {
        return requiresJumpCapture;
    }

    public SneakCaptureEvent sneakEvent() {
        return requiresSneakCapture;
    }

    public SlotCaptureEvent slotCapture() {
        return requiresSlotCapture;
    }

    public ItemDropEvent itemDropCapture() {
        return requiresItemDropCapture;
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy