/* * Copyright (c) 2012 Mateusz Piękos * Licensed under the simplified BSD license. * See Documentation/Licenses/BSD-simplified.txt for more information. */ /* * Copyright (c) 2015 Isode Limited. * All rights reserved. * See the COPYING file for more information. */ #pragma once #include #include #include #include #include #include #include #include #include #include #include namespace Swift { class SWIFTEN_API WhiteboardElementSerializingVisitor : public WhiteboardElementVisitor { public: void visit(WhiteboardLineElement& line); void visit(WhiteboardFreehandPathElement& path); void visit(WhiteboardRectElement& rect); void visit(WhiteboardPolygonElement& polygon); void visit(WhiteboardTextElement& text); void visit(WhiteboardEllipseElement& ellipse); XMLElement::ref getResult() const; private: std::string alphaToOpacity(int alpha) const; XMLElement::ref element; }; class SWIFTEN_API WhiteboardSerializer : public GenericPayloadSerializer { public: std::string serializePayload(boost::shared_ptr payload) const; private: std::string typeToString(WhiteboardPayload::Type type) const; }; }