00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
#ifndef UML_COMMENT_HPP
00026
#define UML_COMMENT_HPP
00027
00028
#include <UML/ModelElement.hpp>
00029
00030
namespace UML
00031 {
00032
00033
class Comment;
00034
class CommentImpl;
00035
class ModelElement;
00036
00037 class Comment :
virtual public UML::
ModelElement
00038 {
00039
public:
00040 typedef OMF::BasicClass<CommentImpl> Proxy;
00041
00042
Comment();
00043
virtual ~Comment();
00044
00045
const OMF::String &
body() const;
00046
void setBody(const OMF::String &value);
00047
void clearBody();
00048
00049 const OMF::Set &annotatedElement();
00050
void addAnnotatedElement(
ModelElement *value);
00051
void removeAnnotatedElement(
ModelElement *value);
00052
void clearAnnotatedElement();
00053
00054 private:
00055 OMF::String _body;
00056 OMF::Set _annotatedElement;
00057 };
00058
00059
00060 struct
CommentImpl : virtual public UML::
Comment
00061 {
00062 CommentImpl() :
00063 OMF::ModelObject(
00064
"UML.Comment",
00065 &Comment::Proxy::instance(),
00066 &
UMLPackage::instance()),
00067
Element(),
00068
ModelElement(),
00069 Comment()
00070 {}
00071
00072 virtual ~
CommentImpl()
00073 {}
00074 };
00075 }
00076
00077
#endif