GCOP  1.0
Public Member Functions | Public Attributes
gcop::Controller< Tx, Tu, Ts, Tc > Class Template Reference

#include <controller.h>

Collaboration diagram for gcop::Controller< Tx, Tu, Ts, Tc >:
Collaboration graph
[legend]

List of all members.

Public Member Functions

virtual bool Set (Tu &u, double t, const Tx &x)=0
virtual bool SetParams (const Ts &s)
virtual bool SetContext (const Tc &c)

Public Attributes

Ts s
 controller parameters
Tc c
 controller context

Detailed Description

template<typename Tx, typename Tu, typename Ts = VectorXd, typename Tc = VectorXd>
class gcop::Controller< Tx, Tu, Ts, Tc >

Base controller. Its simple purpose is to take a state x and time t and produces the control u.

Author: Marin Kobilarov -- Copyright (C) 2006-2013


Member Function Documentation

template<typename Tx, typename Tu, typename Ts = VectorXd, typename Tc = VectorXd>
virtual bool gcop::Controller< Tx, Tu, Ts, Tc >::Set ( Tu &  u,
double  t,
const Tx &  x 
) [pure virtual]

Feedback controller of the form u = k(t, x)

Parameters:
ucontrols
ttime
xstate
Returns:
true if arguments are valid, false if e.g. x is infeasible

Implemented in gcop::Body3dDemController< nu >, gcop::Body3dAvoidController< nu >, gcop::GavoidController, gcop::Body3dController< c >, gcop::Body3dController< nu >, gcop::Point3dController, and gcop::MbsController.

template<typename Tx, typename Tu, typename Ts = VectorXd, typename Tc = VectorXd>
virtual bool gcop::Controller< Tx, Tu, Ts, Tc >::SetContext ( const Tc &  c) [inline, virtual]

Set context

Returns:
true if arguments are valid, false if e.g. s is infeasible

Reimplemented in gcop::Body3dDemController< nu >, and gcop::Body3dAvoidController< nu >.

template<typename Tx, typename Tu, typename Ts = VectorXd, typename Tc = VectorXd>
virtual bool gcop::Controller< Tx, Tu, Ts, Tc >::SetParams ( const Ts &  s) [inline, virtual]

Set controller parameters

Returns:
true if arguments are valid, false if e.g. s is infeasible

Reimplemented in gcop::Body3dDemController< nu >, and gcop::Body3dAvoidController< nu >.


Member Data Documentation

template<typename Tx, typename Tu, typename Ts = VectorXd, typename Tc = VectorXd>
Tc gcop::Controller< Tx, Tu, Ts, Tc >::c

controller context

template<typename Tx, typename Tu, typename Ts = VectorXd, typename Tc = VectorXd>
Ts gcop::Controller< Tx, Tu, Ts, Tc >::s

controller parameters


The documentation for this class was generated from the following file: