-
Notifications
You must be signed in to change notification settings - Fork 0
/
transition.h
53 lines (50 loc) · 1.26 KB
/
transition.h
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
/*IMS - Modelovani a simulace
*
* Project: Simulator cernobilych stochastickych Petriho siti
* File: transition.h
* Author: Dusan Kovacic, xkovac21, xkovac21@stud.fit.vutbr.cz
* Jaroslav Sendler, xsendl00, xsendl00@stud.fit.vutr.cz
*
* Encoding: UTF-8
*
* Description:
*/
#pragma once
#include <vector>
#include "statusList.h"
#include "base.h"
#include "coreFunc.h"
#include <cstring>
class SCTransition : public SCBase
{
//members
protected:
int m_timeType;
unsigned int m_priority;
unsigned int m_totalOut;
unsigned int m_totalIn;
double m_time;
double m_timeEnd;
double m_probability;
//methods
public:
bool CheckZeroTimeLoop();
unsigned int GetTotalPassedIn();
unsigned int GetTotalPassedOut();
unsigned int GetPriority();
double GetProbability();
unsigned short GetTimeType();
double GetTime();
double GetTimeEnd();
virtual double GetExactTime();
virtual int Run();
virtual bool IsReadyToRun();
virtual SSBaseData* GetData();
int SetArgPrio(unsigned int prio);
int SetArgTime(double time, int type = TIME_ABS);
int SetArgTime(double from,double to,int type = TIME_NORM);
int SetArgProbability(double probability);
int GetStatus();
SCTransition();
virtual ~SCTransition();
};