#pragma once #include #include "behaviour_control/ds_ctrl.h" #include "position/systems.h" #include "vars.h" #define S1I 21 //A14 N #define S1O 20 //A15 #define S2I 17 //A16 E #define S2O 16 //A17 #define S3I 15 //A20 S #define S3O 14 //A0 #define S4I 23 //A1 O #define S4O 22 //A2 #define LINE_THRESH_CAM 90 #define EXIT_TIME 100 #define LINES_EXIT_SPD 350 class LineSysCamera : public LineSystem{ public: LineSysCamera(); LineSysCamera(vector in_, vector out); void update() override; void test() override; void outOfBounds(); void checkLineSensors(); private: vector in, out; DataSource* ds; bool fboundsX, fboundsY, fboundsOX, fboundsOY, slow; int inV, outV, linesensOldX, linesensOldY, value, linetriggerI[4], linetriggerO[4], linepins[4], i; elapsedMillis exitTimer; int outDir, outVel; byte linesens; };