From a15cf65c44d5c224169c32ef5495b68c758134b7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Frings-F=C3=BCrst?= Date: Sun, 18 May 2014 16:08:14 +0200 Subject: Imported Upstream version 3.3.0.2 --- .../cxx/parser/multiroot/protocol-pimpl.hxx | 49 ++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 xsd/examples/cxx/parser/multiroot/protocol-pimpl.hxx (limited to 'xsd/examples/cxx/parser/multiroot/protocol-pimpl.hxx') diff --git a/xsd/examples/cxx/parser/multiroot/protocol-pimpl.hxx b/xsd/examples/cxx/parser/multiroot/protocol-pimpl.hxx new file mode 100644 index 0000000..0531790 --- /dev/null +++ b/xsd/examples/cxx/parser/multiroot/protocol-pimpl.hxx @@ -0,0 +1,49 @@ +// file : examples/cxx/parser/multiroot/protocol-pimpl.hxx +// author : Boris Kolpackov +// copyright : not copyrighted - public domain + +#ifndef PROTOCOL_PIMPL_HXX +#define PROTOCOL_PIMPL_HXX + +#include "protocol.hxx" +#include "protocol-pskel.hxx" + +namespace protocol +{ + class request_pimpl: public virtual request_pskel + { + public: + virtual void + account (unsigned int); + + virtual request* + post_request (); + + protected: + unsigned int account_; + }; + + class balance_pimpl: public virtual balance_pskel, + public request_pimpl + { + public: + virtual balance* + post_balance (); + }; + + class withdraw_pimpl: public virtual withdraw_pskel, + public request_pimpl + { + public: + virtual void + amount (unsigned int); + + virtual withdraw* + post_withdraw (); + + private: + unsigned int amount_; + }; +} + +#endif // PROTOCOL_PIMPL_HXX -- cgit v1.2.3