Program Listing for File steering_functions.hpp

Return to documentation for file (include/steering_functions/steering_functions.hpp)

/*********************************************************************
*  Copyright (c) 2017 - for information on the respective copyright
*  owner see the NOTICE file and/or the repository
*
*      https://github.com/hbanzhaf/steering_functions.git
*
*  Licensed under the Apache License, Version 2.0 (the "License");
*  you may not use this file except in compliance with the License.
*  You may obtain a copy of the License at
*
*      http://www.apache.org/licenses/LICENSE-2.0
*
*  Unless required by applicable law or agreed to in writing, software
*  distributed under the License is distributed on an "AS IS" BASIS,
*  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
*  implied. See the License for the specific language governing
*  permissions and limitations under the License.
***********************************************************************/

#ifndef STEERING_FUNCTIONS_HPP
#define STEERING_FUNCTIONS_HPP

namespace steering
{

struct State
{
  double x;

  double y;

  double theta;

  double kappa;

  double d;
};

struct State_With_Covariance
{
  State state;

  double Sigma[16] = { 0.0 };

  double Lambda[16] = { 0.0 };

  double covariance[16] = { 0.0 };
};

struct Control
{
  double delta_s;

  double kappa;

  double sigma;
};

struct Motion_Noise
{
  double alpha1;
  double alpha2;

  double alpha3;
  double alpha4;
};

struct Measurement_Noise
{
  double std_x;

  double std_y;

  double std_theta;
};

struct Controller
{
  double k1;

  double k2;

  double k3;
};

} // namespace steering

#endif