1 #ifndef __DSENT_MODEL_TRANSITION_INFO_H__
2 #define __DSENT_MODEL_TRANSITION_INFO_H__
4 #include "util/CommonType.h"
9 * \brief This class contains the number of transitions and the frequency multiplier information
15 TransitionInfo(double number_transitions_00_
, double number_transitions_01_
, double number_transitions_11_
);
19 inline double getNumberTransitions00() const { return m_number_transitions_00_
; }
20 inline double getNumberTransitions01() const { return m_number_transitions_01_
; }
21 inline double getNumberTransitions11() const { return m_number_transitions_11_
; }
22 inline double getFrequencyMultiplier() const { return m_frequency_multiplier_
; }
23 inline double getProbability0() const { return m_probability_1_
; }
24 inline double getProbability1() const { return m_probability_1_
; }
26 inline void setNumberTransitions00(double value_
) { m_number_transitions_00_
= value_
; }
27 inline void setNumberTransitions01(double value_
) { m_number_transitions_01_
= value_
; }
28 inline void setNumberTransitions11(double value_
) { m_number_transitions_11_
= value_
; }
29 inline void setFrequencyMultiplier(double value_
) { m_frequency_multiplier_
= value_
; }
32 TransitionInfo
scaleFrequencyMultiplier(double frequency_multiplier_
) const;
34 void print(std::ostream
& ost_
) const;
37 // m_number_transitions_xy_ defines number of transitions from x to y
38 double m_number_transitions_00_
;
39 double m_number_transitions_01_
;
40 double m_number_transitions_11_
;
41 // The multiplier that defines the ratio of the transition frequency and the main core clock frequency
42 double m_frequency_multiplier_
;
43 // Probability of being at state 0/1
44 double m_probability_0_
;
45 double m_probability_1_
;
46 }; // class TransitionInfo
49 #endif // __DSENT_MODEL_TRANSITION_INFO_H__