1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72
|
#ifndef _UMLBASEUSECASEDIAGRAMDEFINITION_H
#define _UMLBASEUSECASEDIAGRAMDEFINITION_H
// to avoid compiler warning
#include "UmlClass.h"
#include "UmlSubject.h"
#include "UmlFragment.h"
#include "UmlFragmentCompartment.h"
#include "UmlUseCaseReference.h"
#include "UmlUseCaseAssociation.h"
#include <qvector.h>
class UmlUseCaseReference;
class UmlClass;
class UmlUseCaseAssociation;
class UmlFragment;
class UmlSubject;
// this class manages use case diagram definition
class UmlBaseUseCaseDiagramDefinition {
public:
// return the use cases present in the diagram
const QVector<UmlUseCaseReference> & useCases() const {
return _use_cases;
}
// return the actors present in the diagram
const QVector<UmlClass> & actors() const {
return _actors;
}
// return the associations between actor and use case present in the diagram
const QVector<UmlUseCaseAssociation> & associations() const {
return _rels;
}
// return the fragments present in the diagram
const QVector<UmlFragment> & fragments() const {
return _fragments;
}
// return the subjects present in the diagram
const QVector<UmlSubject> & subjects() const {
return _subjects;
}
private:
QVector<UmlUseCaseReference> _use_cases;
QVector<UmlClass> _actors;
QVector<UmlUseCaseAssociation> _rels;
QVector<UmlFragment> _fragments;
QVector<UmlSubject> _subjects;
// internal, don't call it
void read_();
public:
// to avoid compiler warning, don't call it
~UmlBaseUseCaseDiagramDefinition();
friend class UmlBaseUseCaseDiagram;
};
#endif
|