EvalCaseResult.hpp
Go to the documentation of this file.
1 //
2 // EvalCaseResult.hpp
3 //
4 // A single EvalCaseResult.
5 //
6 
7 
8 #ifndef EVALCASERESULT_HPP
9 #define EVALCASERESULT_HPP
10 
11 #include <ostream>
12 #include <string>
13 #include <vector>
14 #include "../BasicDatatypes.hpp"
15 
16 namespace datatypes
17 {
18 
19 //
20 // The EvalCaseResult class is a container for the current status of the configured EvalCases.
21 // Some scanners (such as the LDMRS) send such a structure with every scan, others (like the LMSxxx)
22 // send them only upon a change in any parameter value, e.g. if a field infringement happens.
23 //
24 // Typically, the reception of this structure is requested as a event.
25 //
26 class EvalCaseResult : public BasicData
27 {
28 public:
29  UINT16 uiVersionNo; // Version number of this structure (EvalCaseResult_t)
30 
31  struct // Header
32  {
33  UINT8 usiNumber; // Evaluation case number
34  UINT32 udiSysCount; // Current system time since power on
35  double dDistScaleFactor; // Scale factor of radial distance
36  double dDistScaleOffset; // Scale offset of radial distance
37  UINT32 uiAngleScaleFactor; // Angle resolution
38  INT32 iAngleScaleOffset; // Start angle of measurement area
39  } CaseHdr;
40 
41  typedef enum
42  {
44  ECR_LOW = 1,
45  ECR_HIGH = 2,
50  } CaseResult;
51 
52  UINT8 m_eCaseResult; // case result
53 
54  // aFieldInfringement is currently not in use. maybe it'll be added later.
55 
56  std::string m_sCaseName; // Name of evaluation case (optional)
57  std::string m_sComment; // Comment (optional)
58 
59  struct // Timestamp
60  {
68  } aTimeBlock;
69 
70 //protected:
71 
72 
73 
74 public:
77 
78  std::string toString() const;
79  const UINT32 getUsedMemory() const;
80 };
81 
82 
83 std::ostream& operator<< (std::ostream& os, const EvalCaseResult& result);
84 
85 
86 } // END namespace datatypes
87 
88 
89 #endif // EVALCASERESULT_HPP
UINT16
uint16_t UINT16
Definition: BasicDatatypes.hpp:27
UINT8
uint8_t UINT8
Definition: BasicDatatypes.hpp:29
datatypes::EvalCaseResult::udiSysCount
UINT32 udiSysCount
Definition: EvalCaseResult.hpp:34
datatypes::EvalCaseResult::dDistScaleOffset
double dDistScaleOffset
Definition: EvalCaseResult.hpp:36
datatypes::EvalCaseResult::~EvalCaseResult
~EvalCaseResult()
Definition: EvalCaseResult.cpp:34
datatypes::EvalCaseResult::CaseResult
CaseResult
Definition: EvalCaseResult.hpp:41
datatypes::EvalCaseResult::ECR_INVALID
@ ECR_INVALID
Definition: EvalCaseResult.hpp:49
datatypes::EvalCaseResult::aTimeBlock
struct datatypes::EvalCaseResult::@1 aTimeBlock
datatypes::EvalCaseResult::EvalCaseResult
EvalCaseResult()
Definition: EvalCaseResult.cpp:20
datatypes::EvalCaseResult::getUsedMemory
const UINT32 getUsedMemory() const
Definition: EvalCaseResult.cpp:39
datatypes::EvalCaseResult::m_sComment
std::string m_sComment
Definition: EvalCaseResult.hpp:57
datatypes::EvalCaseResult::ECR_HIGH
@ ECR_HIGH
Definition: EvalCaseResult.hpp:45
datatypes::BasicData
Definition: BasicDatatypes.hpp:95
datatypes::EvalCaseResult::usiDay
UINT8 usiDay
Definition: EvalCaseResult.hpp:63
datatypes::EvalCaseResult::CaseHdr
struct datatypes::EvalCaseResult::@0 CaseHdr
INT32
int32_t INT32
Definition: BasicDatatypes.hpp:25
datatypes::EvalCaseResult::ECR_RAISING
@ ECR_RAISING
Definition: EvalCaseResult.hpp:48
datatypes::EvalCaseResult::m_eCaseResult
UINT8 m_eCaseResult
Definition: EvalCaseResult.hpp:52
datatypes::EvalCaseResult::usiMinute
UINT8 usiMinute
Definition: EvalCaseResult.hpp:65
datatypes::EvalCaseResult::ECR_LOW
@ ECR_LOW
Definition: EvalCaseResult.hpp:44
datatypes::EvalCaseResult::usiMonth
UINT8 usiMonth
Definition: EvalCaseResult.hpp:62
datatypes::operator<<
std::ostream & operator<<(std::ostream &os, const EvalCaseResult &result)
Definition: EvalCaseResult.cpp:72
datatypes::EvalCaseResult::dDistScaleFactor
double dDistScaleFactor
Definition: EvalCaseResult.hpp:35
datatypes::EvalCaseResult::ECR_DONT_CARE
@ ECR_DONT_CARE
Definition: EvalCaseResult.hpp:43
datatypes::EvalCaseResult::udiUSec
UINT32 udiUSec
Definition: EvalCaseResult.hpp:67
datatypes::EvalCaseResult::toString
std::string toString() const
Definition: EvalCaseResult.cpp:48
datatypes::EvalCaseResult::m_sCaseName
std::string m_sCaseName
Definition: EvalCaseResult.hpp:56
datatypes::EvalCaseResult::iAngleScaleOffset
INT32 iAngleScaleOffset
Definition: EvalCaseResult.hpp:38
datatypes::EvalCaseResult::ECR_DETECTING
@ ECR_DETECTING
Definition: EvalCaseResult.hpp:46
datatypes::EvalCaseResult
Definition: EvalCaseResult.hpp:26
datatypes::EvalCaseResult::ECR_FALLING
@ ECR_FALLING
Definition: EvalCaseResult.hpp:47
UINT32
uint32_t UINT32
Definition: BasicDatatypes.hpp:26
datatypes::EvalCaseResult::uiYear
UINT16 uiYear
Definition: EvalCaseResult.hpp:61
datatypes::EvalCaseResult::usiHour
UINT8 usiHour
Definition: EvalCaseResult.hpp:64
datatypes::EvalCaseResult::usiNumber
UINT8 usiNumber
Definition: EvalCaseResult.hpp:33
datatypes::EvalCaseResult::uiVersionNo
UINT16 uiVersionNo
Definition: EvalCaseResult.hpp:29
datatypes::EvalCaseResult::uiAngleScaleFactor
UINT32 uiAngleScaleFactor
Definition: EvalCaseResult.hpp:37
datatypes
Definition: BasicDatatypes.hpp:91
datatypes::EvalCaseResult::usiSec
UINT8 usiSec
Definition: EvalCaseResult.hpp:66


libsick_ldmrs
Author(s): SICK AG , Martin Günther , Jochen Sprickerhof
autogenerated on Wed Oct 26 2022 02:11:57