-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtest_exec.cpp
65 lines (60 loc) · 1.71 KB
/
test_exec.cpp
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
#include <ignition/physics.hh>
#include <ignition/plugin/Loader.hh>
using namespace ignition::physics;
struct MyFeatureList : FeatureList<
GetEntities,
RemoveEntities,
ConstructEmptyWorldFeature,
ConstructEmptyModelFeature,
ConstructEmptyLinkFeature,
CollisionFilterMaskFeature,
FindFreeGroupFeature,
SetFreeGroupWorldPose,
SetFreeGroupWorldVelocity,
GetBasicJointState,
SetBasicJointState,
GetBasicJointProperties,
SetJointTransformFromParentFeature,
SetJointTransformToChildFeature,
DetachJointFeature,
SetFreeJointRelativeTransformFeature,
AttachFixedJointFeature,
SetRevoluteJointProperties,
GetRevoluteJointProperties,
AttachRevoluteJointFeature,
SetPrismaticJointProperties,
GetPrismaticJointProperties,
AttachPrismaticJointFeature,
SetJointVelocityCommandFeature,
LinkFrameSemantics,
ShapeFrameSemantics,
FreeGroupFrameSemantics,
AddLinkExternalForceTorque,
GetShapeKinematicProperties,
SetShapeKinematicProperties,
GetShapeBoundingBox,
GetBoxShapeProperties,
AttachBoxShapeFeature,
GetCylinderShapeProperties,
AttachCylinderShapeFeature,
GetSphereShapeProperties,
ForwardStep,
GetContactsFromLastStepFeature
> {};
int main()
{
auto engine = RequestEngine3d<MyFeatureList>::From(
ignition::plugin::PluginPtr());
if (engine)
{
std::cout << "We have an engine? How??" << std::endl;
auto world = engine->ConstructEmptyWorld("my world");
auto model = world->ConstructEmptyModel("my model");
auto link = model->ConstructEmptyLink("my link");
auto joint = link->AttachRevoluteJoint(nullptr);
}
else
{
std::cout << "Whoops, no engine" << std::endl;
}
}