INOS
cinostrapezeramp.h
Go to the documentation of this file.
1//******************************************************************************
27//******************************************************************************
28
29#ifndef INC_CINOSTRAPEZERAMP_H
30#define INC_CINOSTRAPEZERAMP_H
31//
32//******************************************************************************
33//
34//------------------------------------------------------------------------------
35// defines
36//------------------------------------------------------------------------------
37//
38#define DF_INOS_TRAPEZE_RAMP_DBT "INOS-TRAPEZE-RAMP" // db table name
39#define DF_INOS_TRAPEZE_RAMP_NAME "CINOSTrapezeRamp" // ramp name
40//
41//------------------------------------------------------------------------------
42// includes
43//------------------------------------------------------------------------------
44//
45// system
46#include <cinosbaseramp.h>
47//
48// C++
49//
50// project
51//
52//------------------------------------------------------------------------------
53//--- structures ---------------------------------------------------------------
54//------------------------------------------------------------------------------
55//
58{
59 //declare constructor to suppress compiler warning
60 //delete it if SINOSTrapezeRamp has one ore more member variable
62};
63
64//------------------------------------------------------------------------------
65// class definition
66//------------------------------------------------------------------------------
67//
70{
71 //--- user interface ---------------------------------------------------
72
73 public:
74
80 static uint32 GetVersion();
81
82 // miscellaneous functions
83 virtual void GetCmdRealJerk(real64& arJerk, uint32 auNumber = 0) override;
84 //; get commanded real jerk
85 virtual bool StopLive(real64 arSlowMotion = 1.0, SINOSRampParam* apParam = 0) override;
87 virtual CINOSBaseRamp* Clone() override;
88 #ifndef INOS_RAMP_DLL
90 virtual CINCOObject* GetRegister(const char* apName = "Ramp") override;
92 virtual CINCOObject* GetParamSetRegister(CINOSBaseRampParamSet* apSet) override;
93 #endif
94
95 //--- internals --------------------------------------------------------
96
97 // protected member functions
98 protected:
101 virtual ECalcMoveResult CalcMove(real64 arSlen, SINOSRampParam* apParam, CINOSRampSegTra*& apSegAcc,
102 CINOSRampSegCns*& apSegCns, CINOSRampSegTra*& apSegDec, real64 arVbgn = REAL64(0.0),
103 real64 arVend = REAL64(0.0), real64 arAbgn = REAL64(0.0),
104 real64 arAend = REAL64(0.0), real64 arDuration = REAL64(-1.0)) override;
107 real64 arVb, // starting velocity
108 real64 arAb, // starting acceleration
109 real64 arVe, // ending velocity
110 SINOSRampParam* apParam, // requested parameters
111 CINOSRampSegTra* apResult=0, // result
112 real64 arJb=REAL64(-1.0), // requested begin jerk
113 real64 arJe=REAL64(-1.0), // requested end jerk
114 ECalcSegTraType aeType = eClcSegTraCompatible
115 ) override;
118
119 // protected members
120 protected:
121
122 // allow dynamic object handling (new/delete)
124};
125//
126//------------------------------------------------------------------------------
127// end of file
128//------------------------------------------------------------------------------
129
130#endif // INC_CINOSTRAPEZERAMP_H
Short comment.
#define DECLARE_DYNAMIC(aClass)
Definition cinospartitionmemory.h:328
Definition cinosbaseramp.h:697
Definition cinosbaseramp.h:752
Definition cinosmcmodule.h:1900
definition of the CINOSTrapezeRamp class
Definition cinostrapezeramp.h:70
CINOSRampSegTra * CalcSegTra(real64 arVb, real64 arAb, real64 arVe, SINOSRampParam *apParam, CINOSRampSegTra *apResult=0, real64 arJb=REAL64(-1.0), real64 arJe=REAL64(-1.0), ECalcSegTraType aeType=eClcSegTraCompatible) override
calc transition segment
virtual ECalcMoveResult CalcMove(real64 arSlen, SINOSRampParam *apParam, CINOSRampSegTra *&apSegAcc, CINOSRampSegCns *&apSegCns, CINOSRampSegTra *&apSegDec, real64 arVbgn=REAL64(0.0), real64 arVend=REAL64(0.0), real64 arAbgn=REAL64(0.0), real64 arAend=REAL64(0.0), real64 arDuration=REAL64(-1.0)) override
virtual CINCOObject * GetRegister(const char *apName="Ramp") override
return pointer to my inco object
virtual CINOSBaseRamp * Clone() override
clone myself and return pointer to it
real64 CalcVmax(real64 adS, SINOSRampParam *apParam)
calc max. allowed V for S
static uint32 GetVersion()
get ramp generator version
virtual ~CINOSTrapezeRamp()
destructor
CINOSTrapezeRamp(SINOSTrapezeRamp *apDesc=0)
constructor
virtual CINCOObject * GetParamSetRegister(CINOSBaseRampParamSet *apSet) override
create registration for apSet and return pointer to it
Descriptor structure used to configure a ramp. It is usually defined in a corresponding xxx....
Definition cinosbaseramp.h:211
ramp parameters
Definition cinosbaseramp.h:503
structure of INOS-TRAPEZE-RAMP database table
Definition cinostrapezeramp.h:58