mirror of
https://github.com/moveit/moveit_task_constructor.git
synced 2025-11-04 14:49:57 +08:00
enumerate test stages
remove ambiguity when multiple stages of the same type are used
This commit is contained in:
parent
5ae7e54732
commit
a193fc2ec5
@ -11,12 +11,14 @@
|
|||||||
|
|
||||||
using namespace moveit::task_constructor;
|
using namespace moveit::task_constructor;
|
||||||
|
|
||||||
|
static int mock_id = 0;
|
||||||
|
|
||||||
class GeneratorMockup : public Generator
|
class GeneratorMockup : public Generator
|
||||||
{
|
{
|
||||||
int runs = 0;
|
int runs = 0;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
GeneratorMockup(int runs = 0) : Generator("generator"), runs(runs) {}
|
GeneratorMockup(int runs = 0) : Generator("generator " + std::to_string(mock_id++)), runs(runs) {}
|
||||||
bool canCompute() const override { return runs > 0; }
|
bool canCompute() const override { return runs > 0; }
|
||||||
void compute() override {
|
void compute() override {
|
||||||
if (runs > 0)
|
if (runs > 0)
|
||||||
@ -27,7 +29,8 @@ public:
|
|||||||
class MonitoringGeneratorMockup : public MonitoringGenerator
|
class MonitoringGeneratorMockup : public MonitoringGenerator
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
MonitoringGeneratorMockup(Stage* monitored) : MonitoringGenerator("monitoring generator", monitored) {}
|
MonitoringGeneratorMockup(Stage* monitored)
|
||||||
|
: MonitoringGenerator("monitoring generator " + std::to_string(mock_id++), monitored) {}
|
||||||
bool canCompute() const override { return false; }
|
bool canCompute() const override { return false; }
|
||||||
void compute() override {}
|
void compute() override {}
|
||||||
void onNewSolution(const SolutionBase& s) override {}
|
void onNewSolution(const SolutionBase& s) override {}
|
||||||
@ -39,7 +42,8 @@ class PropagatorMockup : public PropagatingEitherWay
|
|||||||
int bw_runs = 0;
|
int bw_runs = 0;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
PropagatorMockup(int fw = 0, int bw = 0) : PropagatingEitherWay("either way"), fw_runs(fw), bw_runs(bw) {}
|
PropagatorMockup(int fw = 0, int bw = 0)
|
||||||
|
: PropagatingEitherWay("propagate " + std::to_string(mock_id++)), fw_runs(fw), bw_runs(bw) {}
|
||||||
void computeForward(const InterfaceState& from) override {
|
void computeForward(const InterfaceState& from) override {
|
||||||
if (fw_runs > 0)
|
if (fw_runs > 0)
|
||||||
--fw_runs;
|
--fw_runs;
|
||||||
@ -54,7 +58,7 @@ class ForwardMockup : public PropagatorMockup
|
|||||||
public:
|
public:
|
||||||
ForwardMockup(int runs = 0) : PropagatorMockup(runs, 0) {
|
ForwardMockup(int runs = 0) : PropagatorMockup(runs, 0) {
|
||||||
restrictDirection(FORWARD);
|
restrictDirection(FORWARD);
|
||||||
setName("forward");
|
setName("forward " + std::to_string(mock_id++));
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
class BackwardMockup : public PropagatorMockup
|
class BackwardMockup : public PropagatorMockup
|
||||||
@ -62,7 +66,7 @@ class BackwardMockup : public PropagatorMockup
|
|||||||
public:
|
public:
|
||||||
BackwardMockup(int runs = 0) : PropagatorMockup(0, runs) {
|
BackwardMockup(int runs = 0) : PropagatorMockup(0, runs) {
|
||||||
restrictDirection(BACKWARD);
|
restrictDirection(BACKWARD);
|
||||||
setName("backward");
|
setName("backward " + std::to_string(mock_id++));
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -71,7 +75,7 @@ class ConnectMockup : public Connecting
|
|||||||
int runs = 0;
|
int runs = 0;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
ConnectMockup(int runs = 0) : Connecting("connect"), runs(runs) {}
|
ConnectMockup(int runs = 0) : Connecting("connect " + std::to_string(mock_id++)), runs(runs) {}
|
||||||
void compute(const InterfaceState& from, const InterfaceState& to) override {
|
void compute(const InterfaceState& from, const InterfaceState& to) override {
|
||||||
if (runs > 0)
|
if (runs > 0)
|
||||||
--runs;
|
--runs;
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user