00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014 #ifndef __DEMOPAJA_TIMECONTEXTC_H__
00015 #define __DEMOPAJA_TIMECONTEXTC_H__
00016
00017 #include "PajaTypes.h"
00018
00019 namespace PajaSystem {
00020
00022
00028 class TimeContextC
00029 {
00030 public:
00032 TimeContextC( PajaTypes::int32 i32BeatsPerMin, PajaTypes::int32 i32QNotesPerBeat, PajaTypes::int32 i32EditAccuracy );
00033
00035 virtual ~TimeContextC();
00036
00038
00054 virtual PajaTypes::float64 convert_fps_to_time( PajaTypes::float64 f64Time, PajaTypes::float64 f64FPS );
00055
00057
00073 virtual PajaTypes::float64 convert_time_to_fps( PajaTypes::float64 f64FpsTime, PajaTypes::float64 f64FPS );
00074
00076 virtual PajaTypes::int32 get_beats_per_min() const;
00077
00079 virtual PajaTypes::int32 get_qnotes_per_beat() const;
00080
00082 virtual PajaTypes::int32 get_edit_accuracy() const;
00083
00085
00089 virtual PajaTypes::uint32 get_frame_id() const;
00090
00092 virtual void set_frame_id( PajaTypes::uint32 ui32ID );
00093
00094 private:
00095 PajaTypes::int32 m_i32BeatsPerMin;
00096 PajaTypes::int32 m_i32QNotesPerBeat;
00097 PajaTypes::int32 m_i32EditAccuracy;
00098 PajaTypes::float64 m_f64TimeScale;
00099 PajaTypes::float64 m_f64InvTimeScale;
00100 PajaTypes::uint32 m_ui32FrameID;
00101 };
00102
00103 };
00104
00105 #endif // __DEMOPAJA_TIMECONTEXTC_H__