ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE-2.0/src/visitors/CompositeVisitor.hpp
Revision: 1490
Committed: Fri Sep 24 04:16:43 2004 UTC (19 years, 9 months ago) by gezelter
File size: 817 byte(s)
Log Message:
Import of OOPSE v. 2.0

File Contents

# User Rev Content
1 gezelter 1490 #ifndef _COMPOSITEVISITOR_H_
2     #define _COMPOSITEVISITOR_H_
3    
4     #include <list>
5     #include "BaseVisitor.hpp"
6     #include "StuntDouble.hpp"
7     using namespace std;
8    
9     typedef list<pair<BaseVisitor*, int> >::iterator VisitorIterator;
10    
11     class CompositeVisitor: public BaseVisitor{
12     public:
13     CompositeVisitor() : BaseVisitor() { visitorName = "CompositeVisitor";}
14     ~CompositeVisitor();
15    
16     virtual void visit(Atom* atom);
17     virtual void visit(DirectionalAtom* datom);
18     virtual void visit(RigidBody* rb);
19     virtual void update();
20    
21     void addVisitor(BaseVisitor* v, int priority = 0);
22     BaseVisitor* beginVisitor(VisitorIterator& i);
23     BaseVisitor* nextVisitor(VisitorIterator& i);
24    
25     const string toString();
26     protected:
27     list<pair<BaseVisitor*, int> > visitorList;
28     };
29    
30     #endif //_COMPOSITEVISITOR_H_

Properties

Name Value
svn:executable *