Main MRPT website > C++ reference for MRPT 1.9.9
CImpinjRFID.h
Go to the documentation of this file.
1 /* +------------------------------------------------------------------------+
2  | Mobile Robot Programming Toolkit (MRPT) |
3  | http://www.mrpt.org/ |
4  | |
5  | Copyright (c) 2005-2018, Individual contributors, see AUTHORS file |
6  | See: http://www.mrpt.org/Authors - All rights reserved. |
7  | Released under BSD License. See details in http://www.mrpt.org/License |
8  +------------------------------------------------------------------------+ */
9 #ifndef CImpinjRFID_H
10 #define CImpinjRFID_H
11 
15 
18 #include <memory>
19 
20 namespace mrpt
21 {
22 namespace hwdrivers
23 {
24 /** This class implements an interface to an Impinj RFID reader. This object
25  * connects to a program that does the actual communication with the receiver.
26  * This is done because the manufacturer only provides libraries for C# and
27  * Java. The program that runs the device must be started after this object
28  */
30 {
32 
33  private:
34  /** Poses (Antenna 1)
35  */
37 
38  /** Poses (Antenna 2)
39  */
41 
42  /** Server port
43  */
44  int port;
45 
46  /** IP of the module (usually 127.0.0.1)
47  */
49 
50  /** Reader name
51  */
53 
54  /** Server socket (listens for the incoming connection)
55  */
56  std::unique_ptr<mrpt::comms::CServerTCPSocket> server;
57 
58  /** Client socket (handles the connection to the client)
59  */
60  std::unique_ptr<mrpt::comms::CClientTCPSocket> client;
61 
62  /** Driver executable path
63  */
65 
66  /** Connection status
67  */
68  bool connected;
69 
70  /** start the external driver
71  */
72  void startDriver();
73 
74  static void dummy_startDriver(CImpinjRFID* o);
75 
76  public:
77  /** Default constructor.
78  */
79  CImpinjRFID();
80  virtual ~CImpinjRFID();
81 
82  /** Connect to the reader.
83  */
84  void connect();
85 
86  void doProcess();
87 
88  void initialize();
89 
91  const mrpt::config::CConfigFileBase& configSource,
92  const std::string& section);
93 
94  /** Gets the information of the tags as a timestamped observation
95  * NOTE: Deprecated, use getObservations instead. See CGenericSensor
96  * documentation. This function is kept for internal use of the module
97  * \return Returns true if the observation was correct, and false otherwise
98  * \sa mrpt::hwdrivers::CGenericSensor
99  */
101 
102  /** Close the connection to the reader.
103  */
104  void closeReader();
105 }; // End of class def.
106 
107 } // End of namespace
108 } // End of namespace
109 #endif
mrpt::hwdrivers::CImpinjRFID::startDriver
void startDriver()
start the external driver
Definition: CImpinjRFID.cpp:48
CClientTCPSocket.h
mrpt::hwdrivers::CImpinjRFID::IPm
std::string IPm
IP of the module (usually 127.0.0.1)
Definition: CImpinjRFID.h:48
mrpt::hwdrivers::CImpinjRFID::pose_x_1
float pose_x_1
Poses (Antenna 1)
Definition: CImpinjRFID.h:36
mrpt::hwdrivers::CImpinjRFID::pose_yaw_2
float pose_yaw_2
Definition: CImpinjRFID.h:40
CServerTCPSocket.h
mrpt::hwdrivers::CImpinjRFID::~CImpinjRFID
virtual ~CImpinjRFID()
Definition: CImpinjRFID.cpp:31
CObservationRFID.h
mrpt::hwdrivers::CImpinjRFID::pose_y_2
float pose_y_2
Definition: CImpinjRFID.h:40
mrpt
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries.
Definition: CKalmanFilterCapable.h:30
DEFINE_GENERIC_SENSOR
#define DEFINE_GENERIC_SENSOR(class_name)
This declaration must be inserted in all CGenericSensor classes definition, within the class declarat...
Definition: CGenericSensor.h:314
mrpt::hwdrivers::CImpinjRFID::pose_z_2
float pose_z_2
Definition: CImpinjRFID.h:40
mrpt::hwdrivers::CImpinjRFID::CImpinjRFID
CImpinjRFID()
Default constructor.
Definition: CImpinjRFID.cpp:25
mrpt::hwdrivers::CImpinjRFID::pose_pitch_2
float pose_pitch_2
Definition: CImpinjRFID.h:40
mrpt::hwdrivers::CImpinjRFID::pose_z_1
float pose_z_1
Definition: CImpinjRFID.h:36
mrpt::hwdrivers::CImpinjRFID::pose_x_2
float pose_x_2
Poses (Antenna 2)
Definition: CImpinjRFID.h:40
mrpt::hwdrivers::CImpinjRFID::server
std::unique_ptr< mrpt::comms::CServerTCPSocket > server
Server socket (listens for the incoming connection)
Definition: CImpinjRFID.h:56
mrpt::hwdrivers::CImpinjRFID::dummy_startDriver
static void dummy_startDriver(CImpinjRFID *o)
Definition: CImpinjRFID.cpp:47
mrpt::hwdrivers::CImpinjRFID::getObservation
bool getObservation(mrpt::obs::CObservationRFID &obs)
Gets the information of the tags as a timestamped observation NOTE: Deprecated, use getObservations i...
Definition: CImpinjRFID.cpp:124
mrpt::hwdrivers::CImpinjRFID::connect
void connect()
Connect to the reader.
Definition: CImpinjRFID.cpp:106
CConfigFileBase.h
mrpt::hwdrivers::CImpinjRFID::doProcess
void doProcess()
This method will be invoked at a minimum rate of "process_rate" (Hz)
Definition: CImpinjRFID.cpp:200
mrpt::hwdrivers::CImpinjRFID::port
int port
Server port.
Definition: CImpinjRFID.h:44
mrpt::config::CConfigFileBase
This class allows loading and storing values and vectors of different types from a configuration text...
Definition: config/CConfigFileBase.h:44
CGenericSensor.h
mrpt::hwdrivers::CImpinjRFID::pose_roll_1
float pose_roll_1
Definition: CImpinjRFID.h:36
mrpt::hwdrivers::CImpinjRFID::pose_roll_2
float pose_roll_2
Definition: CImpinjRFID.h:40
mrpt::hwdrivers::CImpinjRFID::connected
bool connected
Connection status.
Definition: CImpinjRFID.h:68
mrpt::hwdrivers::CImpinjRFID::client
std::unique_ptr< mrpt::comms::CClientTCPSocket > client
Client socket (handles the connection to the client)
Definition: CImpinjRFID.h:60
mrpt::hwdrivers::CImpinjRFID::loadConfig_sensorSpecific
void loadConfig_sensorSpecific(const mrpt::config::CConfigFileBase &configSource, const std::string &section)
Loads specific configuration for the device from a given source of configuration parameters,...
Definition: CImpinjRFID.cpp:68
mrpt::hwdrivers::CImpinjRFID::pose_yaw_1
float pose_yaw_1
Definition: CImpinjRFID.h:36
mrpt::hwdrivers::CGenericSensor
A generic interface for a wide-variety of sensors designed to be used in the application RawLogGrabbe...
Definition: CGenericSensor.h:70
mrpt::hwdrivers::CImpinjRFID
This class implements an interface to an Impinj RFID reader.
Definition: CImpinjRFID.h:29
mrpt::hwdrivers::CImpinjRFID::pose_y_1
float pose_y_1
Definition: CImpinjRFID.h:36
mrpt::hwdrivers::CImpinjRFID::pose_pitch_1
float pose_pitch_1
Definition: CImpinjRFID.h:36
mrpt::obs::CObservationRFID
This represents one or more RFID tags observed by a receiver.
Definition: CObservationRFID.h:27
mrpt::hwdrivers::CImpinjRFID::initialize
void initialize()
This method can or cannot be implemented in the derived class, depending on the need for it.
Definition: CImpinjRFID.cpp:32
string
GLsizei const GLchar ** string
Definition: glext.h:4101
mrpt::hwdrivers::CImpinjRFID::driver_path
std::string driver_path
Driver executable path.
Definition: CImpinjRFID.h:64
mrpt::hwdrivers::CImpinjRFID::reader_name
std::string reader_name
Reader name.
Definition: CImpinjRFID.h:52
mrpt::hwdrivers::CImpinjRFID::closeReader
void closeReader()
Close the connection to the reader.
Definition: CImpinjRFID.cpp:190



Page generated by Doxygen 1.8.17 for MRPT 1.9.9 Git: ad3a9d8ae Tue May 1 23:10:22 2018 -0700 at miƩ 12 jul 2023 10:03:34 CEST