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;
|
||||
|
||||
static int mock_id = 0;
|
||||
|
||||
class GeneratorMockup : public Generator
|
||||
{
|
||||
int runs = 0;
|
||||
|
||||
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; }
|
||||
void compute() override {
|
||||
if (runs > 0)
|
||||
@ -27,7 +29,8 @@ public:
|
||||
class MonitoringGeneratorMockup : public MonitoringGenerator
|
||||
{
|
||||
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; }
|
||||
void compute() override {}
|
||||
void onNewSolution(const SolutionBase& s) override {}
|
||||
@ -39,7 +42,8 @@ class PropagatorMockup : public PropagatingEitherWay
|
||||
int bw_runs = 0;
|
||||
|
||||
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 {
|
||||
if (fw_runs > 0)
|
||||
--fw_runs;
|
||||
@ -54,7 +58,7 @@ class ForwardMockup : public PropagatorMockup
|
||||
public:
|
||||
ForwardMockup(int runs = 0) : PropagatorMockup(runs, 0) {
|
||||
restrictDirection(FORWARD);
|
||||
setName("forward");
|
||||
setName("forward " + std::to_string(mock_id++));
|
||||
}
|
||||
};
|
||||
class BackwardMockup : public PropagatorMockup
|
||||
@ -62,7 +66,7 @@ class BackwardMockup : public PropagatorMockup
|
||||
public:
|
||||
BackwardMockup(int runs = 0) : PropagatorMockup(0, runs) {
|
||||
restrictDirection(BACKWARD);
|
||||
setName("backward");
|
||||
setName("backward " + std::to_string(mock_id++));
|
||||
}
|
||||
};
|
||||
|
||||
@ -71,7 +75,7 @@ class ConnectMockup : public Connecting
|
||||
int runs = 0;
|
||||
|
||||
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 {
|
||||
if (runs > 0)
|
||||
--runs;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user