#ifndef __RV_INDIX_H_INCLUDED_
#define __RV_INDIX_H_INCLUDED_

// The following ifdef block is the standard way of creating macros which make exporting 
// from a DLL simpler. All files within this DLL are compiled with the INDIX_EXPORTS
// symbol defined on the command line. this symbol should not be defined on any project
// that uses this DLL. This way any other project whose source files include this file see 
// INDIX_API functions as being imported from a DLL, wheras this DLL sees symbols
// defined with this macro as being exported.
#ifdef INDIX_EXPORTS
#define INDIX_API __declspec(dllexport)
#else
#define INDIX_API __declspec(dllimport)
#endif
 
//#include <Mmsystem.h>


#include <sst\ucut.h>
#include <sst\ucb.h>
#include <sst\WindowDelegate.h>
 

//INDIX_API BOOL  rvixInitMediaTimerManager();
//INDIX_API void  rvixFinalizeMediaTimerManager();


//CMediaTimerManager* indixGetMediaTimerManager();

//user control class type: indicater 
#define RV_UC_INDT_MARK            (UC_INDT_BASE + 1)
#define RV_UC_INDT_LABEL           (UC_INDT_BASE + 2)
#define RV_UC_INDT_PICTURE         (UC_INDT_BASE + 3)
#define RV_UC_INDT_ANIMATOR        (UC_INDT_BASE + 4)

#define RV_UC_INDT_SHAPE           (UC_INDT_BASE + 10)
#define RV_UC_INDT_LINE            (UC_INDT_BASE + 11)
#define RV_UC_INDT_ZEROPOS         (UC_INDT_BASE + 12)
#define RV_UC_INDT_REFERPOS        (UC_INDT_BASE + 13)
#define RV_UC_INDT_CROSSLINE       (UC_INDT_BASE + 14)
#define RV_UC_INDT_POLYLINE       (UC_INDT_BASE + 15)





#define RV_UC_INDT_RUNNING_LABEL   (UC_INDT_BASE + 21)
#define RV_UC_INDT_TIME_LABEL      (UC_INDT_BASE + 22)
#define RV_UC_INDT_COMMENT         (UC_INDT_BASE + 23)

#define RV_UC_INDT_PICTURE_SP     (UC_INDT_BASE + 31)

 


//单位：微秒
inline __int64 ix_get_time()
{
	LARGE_INTEGER litmp; 
	//LONGLONG ticks;
	//LONGLONG lTimeEnd;
	//	double dMinus;
	double dFreq;
	double ticks;

	QueryPerformanceFrequency(&litmp);	// 获得机器内部定时器的时钟频率
	dFreq = (double)litmp.QuadPart;		// 获得计数器的时钟频率

	QueryPerformanceCounter(&litmp);
	ticks = (double)litmp.QuadPart;		// 获得时间起始值

	return (__int64)((ticks  / dFreq) * 1000000);  

};

















#endif  //__RV_INDIX_H_INCLUDED_