-
Notifications
You must be signed in to change notification settings - Fork 1
Mapping Hierarchy
Loic Oudot edited this page Nov 4, 2013
·
1 revision
By default, no superclass nor interfaces are exported in the C++ proxies.
You can activate the generation of the superclass proxies and respect the hierarchy.
Annotation case:
package demo;
@Java4cpp(superclass = true)
public class Sample extends Superclass {
}XML case:
<mappings>
<classes>
<class class="demo.Sample" superclass="true">
</class>
</classes>
</mappings>will produce:
namespace demo {
class Sample : public Superclass {
};
}You can select which of the interfaces you wants in your resulting C++ proxies. You have two ways for selecting interfaces :
- export all interfaces, and manually lists interfaces you don't want to generate
- export no interface, and manually lists interfaces you want to generate
Annotations case:
package demo;
@Java4cpp(interfaces = true, noWrappeInterfaces = { Interface2.class })
public class Sample implements Interface1, Interfaces2 {
}or
package demo;
@Java4cpp(wrappeInterfaces = { Interface1.class })
public class Sample implements Interface1, Interfaces2 {
}XML case :
You specify the interface by is full java name.
<mappings>
<classes>
<class class="demo.Sample" interfaceAll="true">
<interfaces>
<noWrappes>
<noWrappe>demo.Interface2</noWrappe>
</noWrappes>
</interfaces>
</class>
</classes>
</mappings>or
<mappings>
<classes>
<class class="demo.Sample" interfaceAll="false">
<interfaces>
<wrappes>
<wrappe>demo.Interface1</wrappe>
</wrappes>
</interfaces>
</class>
</classes>
</mappings>will produce:
namespace demo {
class Sample : public Interface1 {
};
}