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_OPERATION_HPP
00026
#define UML_OPERATION_HPP
00027
00028
#include <UML/BehavioralFeature.hpp>
00029
#include <UML/CallConcurrencyKind.hpp>
00030
00031
namespace UML
00032 {
00033
00034
class Operation;
00035
class OperationImpl;
00036
00037 class Operation :
virtual public UML::
BehavioralFeature
00038 {
00039
public:
00040 typedef OMF::BasicClass<OperationImpl> Proxy;
00041
00042
Operation();
00043
virtual ~Operation();
00044
00045
const CallConcurrencyKind &
concurrency() const;
00046
void setConcurrency(const
CallConcurrencyKind &value);
00047
void clearConcurrency();
00048
00049 const OMF::Boolean &isRoot() const;
00050
void setIsRoot(const OMF::Boolean &value);
00051
void clearIsRoot();
00052
00053 const OMF::Boolean &isLeaf() const;
00054
void setIsLeaf(const OMF::Boolean &value);
00055
void clearIsLeaf();
00056
00057 const OMF::Boolean &isAbstract() const;
00058
void setIsAbstract(const OMF::Boolean &value);
00059
void clearIsAbstract();
00060
00061 const OMF::String &specification() const;
00062
void setSpecification(const OMF::String &value);
00063
void clearSpecification();
00064
00065 private:
00066
CallConcurrencyKind _concurrency;
00067 OMF::Boolean _isRoot;
00068 OMF::Boolean _isLeaf;
00069 OMF::Boolean _isAbstract;
00070 OMF::String _specification;
00071 };
00072
00073
00074 struct
OperationImpl : virtual public UML::
Operation
00075 {
00076 OperationImpl() :
00077 OMF::ModelObject(
00078
"UML.Operation",
00079 &Operation::Proxy::instance(),
00080 &
UMLPackage::instance()),
00081
Element(),
00082
ModelElement(),
00083
Feature(),
00084
BehavioralFeature(),
00085 Operation()
00086 {}
00087
00088 virtual ~
OperationImpl()
00089 {}
00090 };
00091 }
00092
00093
#endif