/usr/include/choreonoid-1.1/cnoid/src/PoseSeqPlugin/BodyMotionGenerationBar.h is in libcnoid-dev 1.1.0+dfsg-6.1+b4.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 | /**
@author Shin'ichiro Nakaoka
*/
#ifndef CNOID_CHOREOGRAPHY_BODY_MOTION_GENERATION_BAR_H_INCLUDED
#define CNOID_CHOREOGRAPHY_BODY_MOTION_GENERATION_BAR_H_INCLUDED
#include <cnoid/ToolBar>
#include <cnoid/LazySignal>
#include <cnoid/ConnectionSet>
#include <cnoid/Body>
#include <cnoid/BodyMotionItem>
#include "exportdecl.h"
namespace cnoid {
class ExtensionManager;
class TimeBar;
class PoseProvider;
class BodyMotionPoseProvider;
class PoseProviderToBodyMotionConverter;
class BodyMotionGenerationSetupDialog;
class ToggleToolButton;
class Action;
class CNOID_EXPORT BodyMotionGenerationBar : public ToolBar
{
public:
static void initializeInstance(ExtensionManager* ext);
static BodyMotionGenerationBar* instance();
virtual ~BodyMotionGenerationBar();
bool shapeBodyMotion(
BodyPtr body, PoseProvider* provider, BodyMotionItemPtr motionItem, bool putMessages = false);
typedef boost::function<bool(BodyPtr& body, PoseProvider* provider,
BodyMotionItemPtr motionItem, bool putMessages)> BalancerFunc;
void setBalancer(BalancerFunc func, QWidget* panel);
void unsetBalancer();
bool isAutoInterpolationUpdateMode() const;
bool isBalancerEnabled() const;
bool isAutoGenerationMode() const;
double timeScaleRatio() const;
double preInitialDuration() const;
double postFinalDuration() const;
double timeToStartBalancer() const;
int balancerIterations() const;
int boundaryConditionType() const;
int boundarySmootherType() const;
double boundarySmootherTime() const;
double dynamicsTimeRatio() const;
bool isTimeBarRangeOnly() const;
int initialWaistTrajectoryMode() const;
bool isStealthyStepMode() const;
double stealthyHeightRatioThresh() const;
double flatLiftingHeight() const;
double flatLandingHeight() const;
double impactReductionHeight() const;
double impactReductionTime() const;
bool isAutoZmpAdjustmentMode() const;
double minZmpTransitionTime() const;
double zmpCenteringTimeThresh() const;
double zmpTimeMarginBeforeLifting() const;
bool isSe3Enabled() const;
bool isLipSyncMixMode() const;
SignalProxy< boost::signal<void()> > sigInterpolationParametersChanged() {
return sigInterpolationParametersChanged_.signal();
}
private:
BodyMotionPoseProvider* bodyMotionPoseProvider;
PoseProviderToBodyMotionConverter* poseProviderToBodyMotionConverter;
BalancerFunc applyBalancer;
QWidget* balancerPanel;
TimeBar* timeBar;
BodyMotionGenerationSetupDialog* setup;
Action* autoInterpolationUpdateCheck;
ToolButton* balancerToggle;
ToolButton* autoGenerationToggle;
LazySignal< boost::signal<void()> >sigInterpolationParametersChanged_;
ConnectionSet interpolationParameterWidgetsConnection;
BodyMotionGenerationBar();
void notifyInterpolationParametersChanged();
void onGenerationButtonClicked();
bool shapeBodyMotionWithSimpleInterpolation
(BodyPtr& body, PoseProvider* provider, BodyMotionItemPtr motionItem);
virtual bool storeState(Archive& archive);
virtual bool restoreState(const Archive& archive);
};
}
#endif
|