Add constructs for superstructure

Signed-off-by: Thiago Monteiro <oculusdev124@gmail.com>
Change-Id: Ic3c3be9cd6705ba9dd7c0f4186e491e6e9b3be85
Signed-off-by: Niko Sohmers <nikolai@sohmers.com>
diff --git a/y2022_bot3/control_loops/superstructure/superstructure.h b/y2022_bot3/control_loops/superstructure/superstructure.h
index 91f80b4..4f33c3c 100644
--- a/y2022_bot3/control_loops/superstructure/superstructure.h
+++ b/y2022_bot3/control_loops/superstructure/superstructure.h
@@ -31,6 +31,16 @@
                           std::shared_ptr<const constants::Values> values,
                           const ::std::string &name = "/superstructure");
 
+  inline const PotAndAbsoluteEncoderSubsystem &intake() const {
+    return intake_;
+  }
+  inline const PotAndAbsoluteEncoderSubsystem &climber_left() const {
+    return climber_left_;
+  }
+  inline const PotAndAbsoluteEncoderSubsystem &climber_right() const {
+    return climber_right_;
+  }
+
  protected:
   virtual void RunIteration(const Goal *unsafe_goal, const Position *position,
                             aos::Sender<Output>::Builder *output,
@@ -39,6 +49,10 @@
  private:
   std::shared_ptr<const constants::Values> values_;
 
+  PotAndAbsoluteEncoderSubsystem climber_left_;
+  PotAndAbsoluteEncoderSubsystem climber_right_;
+  PotAndAbsoluteEncoderSubsystem intake_;
+
   aos::Fetcher<frc971::control_loops::drivetrain::Status>
       drivetrain_status_fetcher_;
   aos::Fetcher<aos::JoystickState> joystick_state_fetcher_;