21 lines
481 B
C++
21 lines
481 B
C++
// EntryVisitor.h
|
|
|
|
#ifndef ENTRYVISITOR_H
|
|
#define ENTRYVISITOR_H
|
|
|
|
class PersonEntry;
|
|
class CompanyEntry;
|
|
class GroupEntry;
|
|
|
|
class EntryVisitor {
|
|
public:
|
|
virtual void visit(const PersonEntry &) = 0;
|
|
virtual void visit(const CompanyEntry &) = 0;
|
|
virtual void visit(const GroupEntry &) = 0;
|
|
|
|
virtual void unVisit(const GroupEntry &) {
|
|
} // In some cases, the composite node may need special processing after delegation to children
|
|
};
|
|
|
|
#endif
|