10 #ifndef hifi_Controllers_CompositeEndpoint_h
11 #define hifi_Controllers_CompositeEndpoint_h
13 #include "../Endpoint.h"
15 namespace controller {
16 class CompositeEndpoint :
public Endpoint, Endpoint::Pair {
18 static std::shared_ptr<Endpoint> newEndpoint(Endpoint::Pointer first, Endpoint::Pointer second) {
19 return std::shared_ptr<Endpoint>(
new CompositeEndpoint(first, second));
22 using Endpoint::apply;
24 virtual AxisValue peek()
const override;
25 virtual AxisValue value()
override;
26 virtual void apply(AxisValue newValue,
const Pointer& source)
override;
27 virtual bool readable()
const override;
30 CompositeEndpoint(Endpoint::Pointer first, Endpoint::Pointer second);