新增PQDIF解析线程,新增各项PQDIF解析逻辑
This commit is contained in:
@@ -51,7 +51,7 @@ struct PqdifSeriesInfoEx
|
||||
double offset = 0.0; // ƫ<><C6AB>
|
||||
};
|
||||
|
||||
class CPQDIF
|
||||
class CPQDIF
|
||||
{
|
||||
public:
|
||||
CPQDIF();
|
||||
@@ -66,19 +66,20 @@ public:
|
||||
bool RecordGetInfo
|
||||
(
|
||||
long index,
|
||||
GUID * tagRecordType,
|
||||
string & nameRecordType
|
||||
GUID* tagRecordType,
|
||||
string& nameRecordType
|
||||
);
|
||||
bool RecordRequestObservation(long index, long * pRecordObserv);
|
||||
bool RecordRequestRecord(long index, long* pRecord);
|
||||
bool RecordRequestObservation(long index, long* pRecordObserv);
|
||||
bool ObservationGetInfo(long pRecordObserv, DATE& timeStart, string& name, long& countChannels);
|
||||
bool ObservationGetTriggerInfo(long pRecordObserv, long * idTriggerMethod, DATE * timeTriggered);
|
||||
bool ObservationGetChannelInfo(long pRecordObserv, long idxChannel, string &name, long * countSeries);
|
||||
bool ObservationGetSeriesInfo3(long pRecordObserv, long idxChannel, long idxSeries, long * idQuantityUnits, GUID * idQuantityCharacteristic, GUID * idValueType);
|
||||
bool ObservationGetSeriesData(long pRecordObserv, long idxChannel, long idxSeries, double ** values, long* varCount);
|
||||
bool ObservationGetChannelFreq(long pRecObs, long idxChannel, double * freq);
|
||||
bool ObservationGetChannelGroupID(long pRecObs, long idxChannel, int *GroupID);
|
||||
bool ObservationGetSeriesPhasicType(long pRecordObserv, long idxChannel, long idxSeries, long *valuetypes);
|
||||
bool ObservationGetSeriesScale(long pRecObs, long idxChannel, long idxSeries, double * scale, double * offset);
|
||||
bool ObservationGetTriggerInfo(long pRecordObserv, long* idTriggerMethod, DATE* timeTriggered);
|
||||
bool ObservationGetChannelInfo(long pRecordObserv, long idxChannel, string& name, long* countSeries);
|
||||
bool ObservationGetSeriesInfo3(long pRecordObserv, long idxChannel, long idxSeries, long* idQuantityUnits, GUID* idQuantityCharacteristic, GUID* idValueType);
|
||||
bool ObservationGetSeriesData(long pRecordObserv, long idxChannel, long idxSeries, double** values, long* varCount);
|
||||
bool ObservationGetChannelFreq(long pRecObs, long idxChannel, double* freq);
|
||||
bool ObservationGetChannelGroupID(long pRecObs, long idxChannel, int* GroupID);
|
||||
bool ObservationGetSeriesPhasicType(long pRecordObserv, long idxChannel, long idxSeries, long* valuetypes);
|
||||
bool ObservationGetSeriesScale(long pRecObs, long idxChannel, long idxSeries, double* scale, double* offset);
|
||||
bool RecordReleaseObservation(long pRecordObserv);
|
||||
|
||||
// <20><>ȡ Observation <20><>ij<EFBFBD><C4B3>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>չ<EFBFBD><D5B9>ǩ<EFBFBD><C7A9>Ϣ
|
||||
@@ -88,18 +89,18 @@ public:
|
||||
bool ObservationGetSeriesInfoEx(long pRecordObserv, long idxChannel, long idxSeries, PqdifSeriesInfoEx* out);
|
||||
// Internal
|
||||
protected:
|
||||
CPQDIF_Element * ValidateElement(long pElement);
|
||||
CPQDIF_E_Collection * ValidateCollection(long pElement);
|
||||
CPQDIF_E_Scalar * ValidateScalar(long pElement);
|
||||
CPQDIF_E_Vector * ValidateVector(long pElement);
|
||||
CPQDIF_R_Observation * ValidateObservation(long pRecObserv);
|
||||
CPQDIF_R_DataSource * ValidateDataSource(long pRecDS);
|
||||
CPQDIF_R_Settings * ValidateSettings(long pRecSettings);
|
||||
CPQDIF_R_Container* ValidateContainer(long pRecCon);
|
||||
CPQDIF_Element* ValidateElement(long pElement);
|
||||
CPQDIF_E_Collection* ValidateCollection(long pElement);
|
||||
CPQDIF_E_Scalar* ValidateScalar(long pElement);
|
||||
CPQDIF_E_Vector* ValidateVector(long pElement);
|
||||
CPQDIF_R_Observation* ValidateObservation(long pRecObserv);
|
||||
CPQDIF_R_DataSource* ValidateDataSource(long pRecDS);
|
||||
CPQDIF_R_Settings* ValidateSettings(long pRecSettings);
|
||||
CPQDIF_R_Container* ValidateContainer(long pRecCon);
|
||||
bool SetDateFromTimeStamp(DATE& date, const TIMESTAMPPQDIF& ts);
|
||||
// Member data
|
||||
private:
|
||||
CPQDIF_PC_FlatFile * m_percont; // Persistence controller
|
||||
CPQDIF_PC_FlatFile* m_percont; // Persistence controller
|
||||
|
||||
};
|
||||
|
||||
@@ -162,7 +163,7 @@ public:
|
||||
cJSON* cJSON_GetObjectItemCaseSensitive(cJSON* object, const char* string);//json<6F>ṹ<EFBFBD><E1B9B9><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ȡֵ
|
||||
bool ExtractNumbersBetweenPercent(const std::string& str, int& start, int& end);
|
||||
std::string convertToDateOnly(const std::string& dateTime);
|
||||
int getCurrentGroup(const std::time_t& currentTime,int min);
|
||||
int getCurrentGroup(const std::time_t& currentTime, int min);
|
||||
std::time_t stringToTimeT(const std::string& dateTime);
|
||||
|
||||
std::list<CTable*> DataTableList;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>
|
||||
|
||||
Reference in New Issue
Block a user