~verifydtapn-contributers/verifydtapn/trunk

« back to all changes in this revision

Viewing changes to src/DiscreteVerification/DataStructures/WorkflowPWList.hpp

  • Committer: Jiri Srba
  • Date: 2015-08-31 12:39:10 UTC
  • mfrom: (324.3.24 PTrieWorkflow)
  • Revision ID: srba@cs.aau.dk-20150831123910-qwr9g6pq7zntajhe
merged in a big branch implementing PTrie for workflow analysis

Show diffs side-by-side

added added

removed removed

Lines of Context:
15
15
#include "NonStrictMarking.hpp"
16
16
#include "WaitingList.hpp"
17
17
#include "PWList.hpp"
 
18
#include "CoveredMarkingVisitor.h"
18
19
 
19
20
namespace VerifyTAPN {
20
21
namespace DiscreteVerification {
51
52
        }
52
53
 
53
54
    };
 
55
    
 
56
    class WorkflowPWListHybrid : public WorkflowPWListBasic, public PWListHybrid {
 
57
    private:
 
58
        CoveredMarkingVisitor visitor;
 
59
        ptriepointer_t<MetaData*> last_pointer;
 
60
    public:
 
61
        WorkflowPWListHybrid(TAPN::TimedArcPetriNet& tapn, 
 
62
                                WaitingList<ptriepointer_t<MetaData*> >* w_l, 
 
63
                                int knumber, 
 
64
                                int nplaces, 
 
65
                                int mage);
 
66
        ~WorkflowPWListHybrid();
 
67
        virtual NonStrictMarking* getCoveredMarking(NonStrictMarking* marking, bool useLinearSweep);
 
68
        virtual NonStrictMarking* getUnpassed();
 
69
        virtual bool add(NonStrictMarking* marking);
 
70
        virtual NonStrictMarking* addToPassed(NonStrictMarking* marking, bool strong);
 
71
        virtual void addLastToWaiting();
 
72
        virtual void setParent(NonStrictMarking* marking, NonStrictMarking*)
 
73
        {
 
74
            ((MetaDataWithTraceAndEncoding*)marking->meta)->parent = parent;
 
75
        }
 
76
    };
54
77
 
55
78
} /* namespace DiscreteVerification */
56
79
} /* namespace VerifyTAPN */