123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131 |
- #pragma once
- #include "XMLSerialization.h"
- namespace OTSMODEL {
- __declspec(dllexport) const double DEFAULT_RADIO = 1.0;
- // CMsrResultItem command target
- class __declspec(dllexport) CMsrResultItem : public xmls::ISlo
- {
- public:
- CMsrResultItem(); // constructor
- CMsrResultItem(const CMsrResultItem&); // copy constructor
- CMsrResultItem(CMsrResultItem*); // copy constructor
- CMsrResultItem& operator=(const CMsrResultItem&); // =operator
- BOOL operator==(const CMsrResultItem&); // ==operator
- virtual ~CMsrResultItem(); // destructor
- // serialization
- //void Serialize(CArchive& ar);
- void Serialize(bool isStoring, tinyxml2::XMLDocument * classDoc, tinyxml2::XMLElement * rootNode);
- // Type ID
- int GetTypeId() { return m_nTypeId; }
- void SetTypeId(int a_nTypeId) { m_nTypeId = a_nTypeId; }
- // area (micros)
- double GetArea() { return m_nArea; }
- void SetArea(double a_nArea) { m_nArea = a_nArea; }
- // particle number
- DWORD GetNumber() { return m_nNumber; }
- void SetNumber(DWORD a_nNumber) { m_nNumber = a_nNumber; }
- std::string GetName() const { return m_sName; }
- void SetName(std::string val) { m_sName = val; }
- protected:
- // cleanup
- void Cleanup();
- // initialization
- void Init();
- // duplication
- void Duplicate(const CMsrResultItem& a_oSource);
- // Type ID
- int m_nTypeId;
- // area (micros)
- double m_nArea;
- // particle number
- DWORD m_nNumber;
- std::string m_sName;
- };
- typedef std::shared_ptr<CMsrResultItem> __declspec(dllexport) CMsrResultItemPtr;
- typedef std::vector<CMsrResultItemPtr> __declspec(dllexport) CMsrResultItemsList;
- // CMsrResults command target
- class __declspec(dllexport) CMsrResults : public xmls::ISlo
- {
- public:
- CMsrResults(); // constructor
- CMsrResults(const CMsrResults&); // copy constructor
- CMsrResults(CMsrResults*); // copy constructor
- CMsrResults& operator=(const CMsrResults&); // =operator
- BOOL operator==(const CMsrResults&); // ==operator
- virtual ~CMsrResults(); // destructor
- // serialization
- void Serialize(bool isStoring, tinyxml2::XMLDocument * classDoc, tinyxml2::XMLElement * rootNode);
- // radio
- double GetRadio() { return m_dRadio; }
- void SetRadio(double a_dRadio) { m_dRadio = a_dRadio; }
- // measured area (micros)
- DWORD GetMeasuredArea() { return m_nMeasuredArea; }
- void SetMeasuredArea(DWORD a_nMeasuredArea) { m_nMeasuredArea = a_nMeasuredArea; }
- void CumulateMeasuredArea(DWORD a_nMeasuredArea){ m_nMeasuredArea += a_nMeasuredArea; }
- // results items list
- CMsrResultItemsList& GetResultItems() { return m_listResultItems; }
- void SetResultItems(CMsrResultItemsList& a_listResultItems);
- DWORD GetTotalParticleArea();
- DWORD GetTotalparticleIdentifyArea();
- DWORD GetTotalParticleNumber();
- // calculate display ratio
- double CalDisplayRadio();
- // cumulate measure results
- void CumulateMeasureResults(CMsrResultItemPtr a_poResultItems);
- void CumulateMeasureResults(CMsrResultItemsList& a_listResultItems);
- protected:
- // cleanup
- void Cleanup();
- // initialization
- void Init();
- // duplication
- void Duplicate(const CMsrResults& a_oSource);
- // radio
- double m_dRadio;
- // measured area (micros)
- DWORD m_nMeasuredArea;
- // result items list
- CMsrResultItemsList m_listResultItems;
- };
- typedef std::shared_ptr<CMsrResults> __declspec(dllexport) CMsrResultsPtr;
- typedef std::vector<CMsrResultsPtr> __declspec(dllexport) CMsrResultsList;
- }
|