| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120 |
- #pragma once
- #include "MsrThreadStatus.h"
- #include "OTSSampleClr.h"
- namespace OTSINTERFACE {
- using namespace System;
- using namespace OTSDATA;
- using namespace OTSMODEL;
- public ref class CMsrThreadStatusClr :
- public Object
- {
- public:
- CMsrThreadStatusClr();
- CMsrThreadStatusClr(CMsrThreadStatusClr^); // copy constructor
- CMsrThreadStatusClr(CMsrThreadStatusPtr); // copy constructor
- CMsrThreadStatusClr^ operator=( CMsrThreadStatusClr^); // =operator
- ~CMsrThreadStatusClr();
- !CMsrThreadStatusClr();
- CMsrThreadStatusPtr GetMsrThreadStatusPtr();
- // status
- int GetStatus() { return (int)mMsrStatus->get()->GetStatus(); }
- void SetStatus(int a_nStatus) { mMsrStatus->get()->SetStatus ((OTS_MSR_THREAD_STATUS) a_nStatus); }
- // start time
- DateTime^ GetStartTime()
- {
- COleDateTime oStartTime = mMsrStatus->get()->GetStartTime();
- return gcnew DateTime(oStartTime.GetYear(), oStartTime.GetMonth(), oStartTime.GetDay(), oStartTime.GetHour(), oStartTime.GetMinute(), oStartTime.GetSecond());
-
- }
- void SetStartTime(DateTime^ a_timeStart)
- {
- COleDateTime oStartTime;
- int nYear = a_timeStart->Year;
- int nMonth = a_timeStart->Month;
- int nDay = a_timeStart->Day;
- int nHour = a_timeStart->Hour;
- int nMin = a_timeStart->Minute;
- int nSec = a_timeStart->Second;
- if (nYear == 1 && nMonth == 1 && nDay == 1 && nHour == 0 && nMin == 0 && nSec == 0)
- {
- oStartTime = COleDateTime();
- }
- else
- {
- oStartTime.SetDateTime(a_timeStart->Year, a_timeStart->Month, a_timeStart->Day, a_timeStart->Hour, a_timeStart->Minute, a_timeStart->Second);
- }
- mMsrStatus->get()->SetStartTime(oStartTime);
-
- }
- // used time
- TimeSpan^ GetUsedTime()
- {
- COleDateTimeSpan oUsedTime = mMsrStatus->get()->GetUsedTime();
- return gcnew TimeSpan(oUsedTime.GetDays(), oUsedTime.GetHours(), oUsedTime.GetMinutes(), oUsedTime.GetSeconds());
-
- }
- void SetUsedTime(TimeSpan^ a_timeUsed)
- {
- COleDateTimeSpan oUsedTime(a_timeUsed->Days, a_timeUsed->Hours, a_timeUsed->Minutes, a_timeUsed->Seconds);
- mMsrStatus->get()->SetUsedTime(oUsedTime);
- }
- // end time
- DateTime^ GetEndTime()
- {
- COleDateTime oEndTime = mMsrStatus->get()->GetEndTime();
- return gcnew DateTime(oEndTime.GetYear(), oEndTime.GetMonth(), oEndTime.GetDay(), oEndTime.GetHour(), oEndTime.GetMinute(), oEndTime.GetSecond());
- }
- void SetEndTime(DateTime^ a_timeEnd)
- {
- COleDateTime oEndTime;
- int nYear = a_timeEnd->Year;
- int nMonth = a_timeEnd->Month;
- int nDay = a_timeEnd->Day;
- int nHour = a_timeEnd->Hour;
- int nMin = a_timeEnd->Minute;
- int nSec = a_timeEnd->Second;
- if (nYear == 1 && nMonth == 1 && nDay == 1 && nHour == 0 && nMin == 0 && nSec == 0)
- {
- oEndTime = COleDateTime();
- }
- else
- {
- oEndTime.SetDateTime(a_timeEnd->Year, a_timeEnd->Month, a_timeEnd->Day, a_timeEnd->Hour, a_timeEnd->Minute, a_timeEnd->Second);
- }
- mMsrStatus->get()->SetEndTime(oEndTime);
- }
- // completed samples
- COTSSamplesListClr^ GetCompletedSample()
- {
- auto lstSample = mMsrStatus->get()->GetCompletedSamples();
- auto samples = gcnew COTSSamplesListClr();
- for each (auto s in lstSample)
- {
- samples->Add(gcnew COTSSampleClr(s));
- }
- return samples;
- }
- void SetCompletedSample(COTSSamplesListClr^ a_listCpldSamples);
- protected:
- // duplication
- void Duplicate( CMsrThreadStatusClr^ a_oSource);
- private:
- CMsrThreadStatusPtr* mMsrStatus;
-
- };
- }
|