Program Listing for File friLBRState.h

Return to documentation for file (include/fri_client_sdk/friLBRState.h)

#ifndef _KUKA_FRI_LBR_STATE_H
#define _KUKA_FRI_LBR_STATE_H

#include <fri_client_sdk/friClientIf.h>

// forward declarations
typedef struct _FRIMonitoringMessage FRIMonitoringMessage;

namespace KUKA
{
namespace FRI
{

class LBRState
{
  friend class LBRClient;

public:
  enum
  {
    NUMBER_OF_JOINTS = 7
  };

  LBRState();

  double getSampleTime() const;     // sec

  ESessionState getSessionState() const;

  EConnectionQuality getConnectionQuality() const;

  ESafetyState getSafetyState() const;

  EOperationMode getOperationMode() const;

  EDriveState getDriveState() const;

  EClientCommandMode getClientCommandMode() const;

  EOverlayType getOverlayType() const;

  EControlMode getControlMode() const;

  unsigned int getTimestampSec() const;

  unsigned int getTimestampNanoSec() const;

  const double * getMeasuredJointPosition() const;

  const double * getCommandedJointPosition() const;

  const double * getMeasuredTorque() const;

  const double * getCommandedTorque() const;

  const double * getExternalTorque() const;

  const double * getIpoJointPosition() const;

  double getTrackingPerformance() const;

  bool getBooleanIOValue(const char * name) const;

  unsigned long long getDigitalIOValue(const char * name) const;

  double getAnalogIOValue(const char * name) const;

protected:
  static const int LBRMONITORMESSAGEID = 0x245142;
  FRIMonitoringMessage * _message;
};

}
}


#endif // _KUKA_FRI_LBR_STATE_H