:py:mod:`rktl_autonomy.rocket_league_interface`
===============================================

.. py:module:: rktl_autonomy.rocket_league_interface

.. autoapi-nested-parse::

   This the main environment intended for use. It interfaces the agent with the
   mess of other nodes that exist in this repository. Look at higher level
   documentation to learn more about the inputs and outputs from this node and how
   they are consumed or created by others.

   License:
     BSD 3-Clause License
     Copyright (c) 2023, Autonomous Robotics Club of Purdue (Purdue ARC)
     All rights reserved.



Module Contents
---------------

Classes
~~~~~~~

.. autoapisummary::

   rktl_autonomy.rocket_league_interface.CarActions
   rktl_autonomy.rocket_league_interface.RocketLeagueInterface




.. py:class:: CarActions

   Bases: :py:obj:`enum.IntEnum`

   Possible actions for car.

   .. py:attribute:: STOP
      :value: 0

      

   .. py:attribute:: FWD_LEFT

      

   .. py:attribute:: FWD_RIGHT

      

   .. py:attribute:: FWD

      

   .. py:attribute:: REV_LEFT

      

   .. py:attribute:: REV_RIGHT

      

   .. py:attribute:: REV

      

   .. py:attribute:: SIZE

      


.. py:class:: RocketLeagueInterface(eval=False, launch_file=('rktl_autonomy', 'rocket_league_train.launch'), launch_args=[], run_id=None, env_number=0)

   Bases: :py:obj:`rktl_autonomy.ROSInterface`

   ROS interface for the Rocket League.

   .. py:property:: action_space

      The Space object corresponding to valid actions.


   .. py:property:: observation_space

      The Space object corresponding to valid observations.


   .. py:method:: _reset_env()

      Reset environment for a new training episode.


   .. py:method:: _reset_self()

      Reset internally for a new episode.


   .. py:method:: _has_state()

      Determine if the new state is ready.


   .. py:method:: _clear_state()

      Clear state variables / flags in preparation for new ones.


   .. py:method:: _get_state()

      Get state tuple (observation, reward, done, info).


   .. py:method:: _publish_action(action)

      Publish an action to the ROS network.


   .. py:method:: _car_odom_cb(odom_msg)

      Callback for odometry of car.


   .. py:method:: _ball_odom_cb(odom_msg)

      Callback for odometry of ball.


   .. py:method:: _score_cb(score_msg)

      Callback for score of game.