New 2018 and later build setup (#1001)

This commit is contained in:
Thad House
2018-04-29 13:29:07 -07:00
committed by Peter Johnson
parent cb2c9eb6d5
commit 7f88cf768d
317 changed files with 60521 additions and 54781 deletions

View File

@@ -0,0 +1,30 @@
/*----------------------------------------------------------------------------*/
/* Copyright (c) 2017-2018 FIRST. All Rights Reserved. */
/* Open Source Software - may be modified and shared by FRC teams. The code */
/* must be accompanied by the FIRST BSD license file in the root directory of */
/* the project. */
/*----------------------------------------------------------------------------*/
#pragma once
#include "SpeedController.h"
namespace frc {
class MockSpeedController : public SpeedController {
public:
void Set(double speed) override;
double Get() const override;
void SetInverted(bool isInverted) override;
bool GetInverted() const override;
void Disable() override;
void StopMotor() override;
void PIDWrite(double output) override;
private:
double m_speed = 0.0;
bool m_isInverted = false;
};
} // namespace frc

View File

@@ -0,0 +1,69 @@
/*----------------------------------------------------------------------------*/
/* Copyright (c) 2014-2018 FIRST. All Rights Reserved. */
/* Open Source Software - may be modified and shared by FRC teams. The code */
/* must be accompanied by the FIRST BSD license file in the root directory of */
/* the project. */
/*----------------------------------------------------------------------------*/
#pragma once
#include <stdint.h>
class TestBench {
public:
/* Analog input channels */
static const uint32_t kCameraGyroChannel = 0;
static const uint32_t kFakeCompressorChannel = 1;
static const uint32_t kFakeAnalogOutputChannel = 2;
/* Analog output channels */
static const uint32_t kAnalogOutputChannel = 0;
/* DIO channels */
static const uint32_t kTalonEncoderChannelA = 0;
static const uint32_t kTalonEncoderChannelB = 1;
static const uint32_t kVictorEncoderChannelA = 2;
static const uint32_t kVictorEncoderChannelB = 3;
static const uint32_t kJaguarEncoderChannelA = 4;
static const uint32_t kJaguarEncoderChannelB = 5;
static const uint32_t kLoop1OutputChannel = 6;
static const uint32_t kLoop1InputChannel = 7;
static const uint32_t kLoop2OutputChannel = 8;
static const uint32_t kLoop2InputChannel = 9;
/* PWM channels */
static const uint32_t kVictorChannel = 1;
static const uint32_t kJaguarChannel = 2;
static const uint32_t kCameraPanChannel = 8;
static const uint32_t kCameraTiltChannel = 9;
/* MXP digital channels */
static const uint32_t kTalonChannel = 10;
static const uint32_t kFakePressureSwitchChannel = 11;
static const uint32_t kFakeSolenoid1Channel = 12;
static const uint32_t kFakeSolenoid2Channel = 13;
static const uint32_t kFakeRelayForward = 18;
static const uint32_t kFakeRelayReverse = 19;
/* Relay channels */
static const uint32_t kRelayChannel = 0;
/* PDP channels */
static const uint32_t kJaguarPDPChannel = 6;
static const uint32_t kVictorPDPChannel = 8;
static const uint32_t kTalonPDPChannel = 10;
/* PCM channels */
static const int32_t kSolenoidChannel1 = 0;
static const int32_t kSolenoidChannel2 = 1;
/* Filter constants */
static constexpr double kFilterStep = 0.005;
static constexpr double kFilterTime = 2.0;
static constexpr double kSinglePoleIIRTimeConstant = 0.015915;
static constexpr double kSinglePoleIIRExpectedOutput = -3.2172003;
static constexpr double kHighPassTimeConstant = 0.006631;
static constexpr double kHighPassExpectedOutput = 10.074717;
static constexpr int32_t kMovAvgTaps = 6;
static constexpr double kMovAvgExpectedOutput = -10.191644;
};

View File

@@ -0,0 +1,48 @@
/*----------------------------------------------------------------------------*/
/* Copyright (c) 2016-2018 FIRST. All Rights Reserved. */
/* Open Source Software - may be modified and shared by FRC teams. The code */
/* must be accompanied by the FIRST BSD license file in the root directory of */
/* the project. */
/*----------------------------------------------------------------------------*/
#pragma once
#include "Commands/Command.h"
namespace frc {
class MockCommand : public Command {
public:
explicit MockCommand(Subsystem*);
MockCommand();
int32_t GetInitializeCount() { return m_initializeCount; }
bool HasInitialized();
int32_t GetExecuteCount() { return m_executeCount; }
int32_t GetIsFinishedCount() { return m_isFinishedCount; }
bool IsHasFinished() { return m_hasFinished; }
void SetHasFinished(bool hasFinished) { m_hasFinished = hasFinished; }
int32_t GetEndCount() { return m_endCount; }
bool HasEnd();
int32_t GetInterruptedCount() { return m_interruptedCount; }
bool HasInterrupted();
void ResetCounters();
protected:
void Initialize() override;
void Execute() override;
bool IsFinished() override;
void End() override;
void Interrupted() override;
private:
int32_t m_initializeCount;
int32_t m_executeCount;
int32_t m_isFinishedCount;
bool m_hasFinished;
int32_t m_endCount;
int32_t m_interruptedCount;
};
} // namespace frc

View File

@@ -0,0 +1,48 @@
/*----------------------------------------------------------------------------*/
/* Copyright (c) 2017-2018 FIRST. All Rights Reserved. */
/* Open Source Software - may be modified and shared by FRC teams. The code */
/* must be accompanied by the FIRST BSD license file in the root directory of */
/* the project. */
/*----------------------------------------------------------------------------*/
#pragma once
#include "Commands/ConditionalCommand.h"
#include "command/MockCommand.h"
namespace frc {
class MockConditionalCommand : public ConditionalCommand {
public:
MockConditionalCommand(MockCommand* onTrue, MockCommand* onFalse);
void SetCondition(bool condition);
int32_t GetInitializeCount() { return m_initializeCount; }
bool HasInitialized();
int32_t GetExecuteCount() { return m_executeCount; }
int32_t GetIsFinishedCount() { return m_isFinishedCount; }
int32_t GetEndCount() { return m_endCount; }
bool HasEnd();
int32_t GetInterruptedCount() { return m_interruptedCount; }
bool HasInterrupted();
void ResetCounters();
protected:
bool Condition() override;
void Initialize() override;
void Execute() override;
bool IsFinished() override;
void End() override;
void Interrupted() override;
private:
bool m_condition = false;
int32_t m_initializeCount;
int32_t m_executeCount;
int32_t m_isFinishedCount;
int32_t m_endCount;
int32_t m_interruptedCount;
};
} // namespace frc