Metratec devices library 3.1.1.0
|
The reader class for the ASCII based metratec reader. More...
Public Member Functions | |
MetratecReaderGen2 (ICommunicationInterface connection) | |
The reader class for all Metratec reader. | |
MetratecReaderGen2 (ICommunicationInterface connection, ILogger logger) | |
The reader class for all Metratec reader. | |
MetratecReaderGen2 (ICommunicationInterface connection, string id) | |
The reader class for all Metratec reader. | |
MetratecReaderGen2 (ICommunicationInterface connection, string id, ILogger logger) | |
The reader class for all Metratec reader. | |
override string | ExecuteCommand (string command, int timeout=10000) |
Send a command and returns the response. | |
override bool | GetInput (int pin) |
Returns true if the input pin is high, otherwise false. | |
void | EnableInputEvents (bool enable=true) |
Enable or disable input events. | |
override void | SetOutput (int pin, bool value) |
Sets a output pin. | |
bool | GetOutput (int pin) |
Returns true if the output pin is high, otherwise false. | |
override void | SetAntenna (int antennaPort) |
Sets the current antenna to use. | |
int | GetAntenna () |
Gets the current used single antenna. | |
override void | SetAntennaMultiplex (int antennasToUse) |
Sets the number of antennas to be multiplexed. | |
void | SetAntennaMultiplex (List< int > antennaSequence) |
Sets the antenna multiplex sequence. Set the order in which the antennas are activated. | |
virtual List< int > | GetAntennaMultiplex () |
Gets the number of antennas to be multiplexed. | |
override void | StopInventory () |
Stops the continuous inventory scan. | |
![]() | |
MetratecReader (ICommunicationInterface connection) | |
The reader class for all Metratec reader. | |
MetratecReader (ICommunicationInterface connection, ILogger logger) | |
The reader class for all Metratec reader. | |
MetratecReader (ICommunicationInterface connection, string id) | |
The reader class for all Metratec reader. | |
MetratecReader (ICommunicationInterface connection, string id, ILogger logger) | |
The reader class for all Metratec reader. | |
void | Connect () |
Connect the reader. | |
void | Connect (int timeout) |
Connect the reader and wait for the connection established. | |
void | Disconnect () |
Disconnect the reader. | |
abstract string | ExecuteCommand (string command, int timeout=10000) |
Send a command and returns the response. | |
abstract void | SetPower (int power) |
Set the reader power. | |
abstract void | SetAntenna (int antennaPort) |
Sets the current antenna to use. | |
abstract void | SetAntennaMultiplex (int antennasToUse) |
Sets the number of antennas to be multiplexed. | |
abstract List< T > | GetInventory () |
Scan for the current inventory. | |
abstract void | StartInventory () |
Starts the continuous inventory scan. If the inventory event handler is set, any transponder found will be delivered via it. If the event handler is not set, the found transponders can be fetched via the method FetchInventory | |
abstract void | StopInventory () |
Stops the continuous inventory scan. | |
abstract bool | GetInput (int pin) |
Returns true if the input pin is high, otherwise false. | |
abstract void | SetOutput (int pin, bool value) |
Sets a output pin. | |
List< T > | FetchInventory () |
Can be called when an inventory has been started and no inventory callback is set. Returns a list with the currently found transponders. | |
Protected Member Functions | |
void | SetCommand (String command) |
Send a command and check if the response contains "OK". | |
String | GetCommand (String command) |
Send a command and check if the response contains "OK". | |
string[] | SplitResponse (string response) |
Split a multiline response (and check the crc) | |
string[] | SplitLine (string responseLine) |
Split a line response (and check the crc) | |
void | FireInputChangeEvent (int inputPin, bool isHigh) |
Fire a inventory event. | |
override void | HandleResponse (string response) |
Process the reader response...override for event check The base implementation must be called after success. | |
abstract void | HandleInventoryEvent (string response) |
Parse the inventory event (+CINV, +CMINV, +CINVR) | |
override void | PrepareReader () |
Configure the reader. The base implementation must be called after success. | |
override void | ConfigureReader () |
Configure the reader. The base implementation must be called after success. | |
InvalidOperationException | ParseErrorResponse (String response) |
Parse the error response and throw a InvalidOperationException with a detailed message. | |
override void | SetHeartBeatInterval (int intervalInSec) |
Set the HeartBeatInterval ... override for send the heartbeat command. The base implementation must be called after success. | |
override void | UpdateDeviceRevisions () |
Returns the firmware revision ({firmware} {version}) | |
![]() | |
void | SetEndOfFrame (String endOfFrame) |
Set the connection end of frame string. | |
virtual void | SendCommand (string command) |
Send a command. | |
virtual string | GetResponse () |
Returns the next response. | |
List< string > | ClearResponseBuffer () |
Deletes the currently waiting responses from the buffer and returns them. | |
virtual void | SetHeartBeatInterval (int intervalInSec) |
Set the HeartBeatInterval ... override for send the heartbeat command. The base implementation must be called after success. | |
virtual void | PrepareReader () |
Configure the reader. The base implementation must be called after success. | |
abstract void | ConfigureReader () |
Configure the reader. The base implementation must be called after success. | |
abstract void | UpdateDeviceRevisions () |
Update the the firmware name and version ({firmware} {version}) | |
virtual void | HandleResponse (string response) |
Process the reader response...override for event check The base implementation adds the response to the responses queue. | |
void | FireInventoryEvent (List< T > tags, bool continuous) |
Fire a inventory event. | |
Properties | |
int | CurrentAntennaPort [get, set] |
Current antenna port. | |
bool | SingleAntennaInUse [get, set] |
True, if a single antenna is in use. | |
![]() | |
bool | FireEmptyInventories [get, set] |
If the event handler for new inventory is set and this value is true, an empty inventory also triggers the event handler. | |
int | ResponseTimeout [get, set] |
Reader response timeout. | |
string? | FirmwareName [get, protected set] |
Reader firmware name. | |
string? | HardwareName [get, protected set] |
Reader hardware name. | |
string? | FirmwareVersion [get, protected set] |
Reader firmware version. | |
int? | FirmwareMajorVersion [get, set] |
Reader major firmware version. | |
int? | FirmwareMinorVersion [get, set] |
Firmware minor firmware version. | |
string? | HardwareVersion [get, protected set] |
Reader hardware version. | |
string? | SerialNumber [get, protected set] |
Reader serial number. | |
bool | Connected [get] |
The reader connection state. | |
Events | |
EventHandler< InputChangedEventArgs >? | InputChanged |
Input change event handler. | |
![]() | |
EventHandler< StatusEventArgs >? | StatusChanged |
Status change event handler. | |
EventHandler< NewInventoryEventArgs< T > >? | NewInventory |
new inventory event handler | |
Additional Inherited Members | |
![]() | |
string | id |
Reader id. | |
readonly ILogger | Logger |
Logger. | |
The reader class for the ASCII based metratec reader.
T | : | RfidTag |
MetraTecDevices.MetratecReaderGen2< T >.MetratecReaderGen2 | ( | ICommunicationInterface | connection | ) |
The reader class for all Metratec reader.
connection | The connection interface |
MetraTecDevices.MetratecReaderGen2< T >.MetratecReaderGen2 | ( | ICommunicationInterface | connection, |
ILogger | logger | ||
) |
The reader class for all Metratec reader.
connection | The connection interface |
logger | The connection interface |
MetraTecDevices.MetratecReaderGen2< T >.MetratecReaderGen2 | ( | ICommunicationInterface | connection, |
string | id | ||
) |
The reader class for all Metratec reader.
connection | The connection interface |
///
id | The reader id |
MetraTecDevices.MetratecReaderGen2< T >.MetratecReaderGen2 | ( | ICommunicationInterface | connection, |
string | id, | ||
ILogger | logger | ||
) |
The reader class for all Metratec reader.
connection | The connection interface |
id | The reader id |
logger | The connection interface |
|
protectedvirtual |
Configure the reader. The base implementation must be called after success.
Implements MetraTecDevices.MetratecReader< T >.
void MetraTecDevices.MetratecReaderGen2< T >.EnableInputEvents | ( | bool | enable = true | ) |
Enable or disable input events.
enable | enable/disable |
T:System.InvalidOperationException | If the reader return an error |
T:System.TimeoutException | Thrown if the reader does not responding in time |
T:System.ObjectDisposedException | If the reader is not connected or the connection is lost |
|
virtual |
Send a command and returns the response.
command | the command |
timeout | the response timeout, defaults to 2000ms |
T:System.TimeoutException | Thrown if the reader does not responding in time |
T:System.ObjectDisposedException | If the reader is not connected or the connection is lost |
Implements MetraTecDevices.MetratecReader< T >.
|
protected |
Fire a inventory event.
inputPin | the changed input pin |
isHigh | the new value |
int MetraTecDevices.MetratecReaderGen2< T >.GetAntenna | ( | ) |
Gets the current used single antenna.
T:System.InvalidOperationException | If the reader return an error |
T:System.TimeoutException | Thrown if the reader does not responding in time |
T:System.ObjectDisposedException | If the reader is not connected or the connection is lost |
|
virtual |
Gets the number of antennas to be multiplexed.
T:System.InvalidOperationException | If the reader return an error |
|
protected |
Send a command and check if the response contains "OK".
command | the command to send |
|
virtual |
Returns true if the input pin is high, otherwise false.
pin | The requested input pin number |
T:System.InvalidOperationException | If the reader return an error |
T:System.InvalidOperationException | If the reader return an error |
T:System.TimeoutException | Thrown if the reader does not responding in time |
T:System.ObjectDisposedException | If the reader is not connected or the connection is lost |
Implements MetraTecDevices.MetratecReader< T >.
bool MetraTecDevices.MetratecReaderGen2< T >.GetOutput | ( | int | pin | ) |
Returns true if the output pin is high, otherwise false.
pin | The requested input pin number |
T:System.InvalidOperationException | If the reader return an error |
T:System.InvalidOperationException | If the reader return an error |
T:System.TimeoutException | Thrown if the reader does not responding in time |
T:System.ObjectDisposedException | If the reader is not connected or the connection is lost |
|
protectedpure virtual |
Parse the inventory event (+CINV, +CMINV, +CINVR)
response |
Implemented in MetraTecDevices.UhfReaderGen2.
|
protectedvirtual |
Process the reader response...override for event check The base implementation must be called after success.
response | a reader response |
Reimplemented from MetraTecDevices.MetratecReader< T >.
|
protected |
Parse the error response and throw a InvalidOperationException with a detailed message.
response |
|
protectedvirtual |
Configure the reader. The base implementation must be called after success.
Reimplemented from MetraTecDevices.MetratecReader< T >.
|
virtual |
Sets the current antenna to use.
antennaPort | the antenna to use |
T:System.InvalidOperationException | If the reader return an error |
T:System.TimeoutException | Thrown if the reader does not responding in time |
T:System.ObjectDisposedException | If the reader is not connected or the connection is lost |
Implements MetraTecDevices.MetratecReader< T >.
|
virtual |
Sets the number of antennas to be multiplexed.
antennasToUse | the antenna count to use |
T:System.InvalidOperationException | If the reader return an error |
T:System.TimeoutException | Thrown if the reader does not responding in time |
T:System.ObjectDisposedException | If the reader is not connected or the connection is lost |
Implements MetraTecDevices.MetratecReader< T >.
void MetraTecDevices.MetratecReaderGen2< T >.SetAntennaMultiplex | ( | List< int > | antennaSequence | ) |
Sets the antenna multiplex sequence. Set the order in which the antennas are activated.
antennaSequence | the antenna sequence |
T:System.InvalidOperationException | If the reader return an error |
T:System.TimeoutException | Thrown if the reader does not responding in time |
T:System.ObjectDisposedException | If the reader is not connected or the connection is lost |
|
protected |
Send a command and check if the response contains "OK".
command | the command to send |
|
protectedvirtual |
Set the HeartBeatInterval ... override for send the heartbeat command. The base implementation must be called after success.
intervalInSec |
T:System.InvalidOperationException | If the reader return an error |
T:System.TimeoutException | Thrown if the reader does not responding in time |
T:System.ObjectDisposedException | If the reader is not connected or the connection is lost |
Reimplemented from MetraTecDevices.MetratecReader< T >.
|
virtual |
Sets a output pin.
pin | The output pin number |
value | True for set the pin high |
T:System.InvalidOperationException | If the reader return an error |
T:System.TimeoutException | Thrown if the reader does not responding in time |
T:System.ObjectDisposedException | If the reader is not connected or the connection is lost |
Implements MetraTecDevices.MetratecReader< T >.
|
protected |
Split a line response (and check the crc)
responseLine | a line in the reader response |
|
protected |
Split a multiline response (and check the crc)
response | the reader response |
|
virtual |
Stops the continuous inventory scan.
T:System.TimeoutException | Thrown if the reader does not responding in time |
T:System.ObjectDisposedException | /// If the reader is not connected or the connection is lost |
Implements MetraTecDevices.MetratecReader< T >.
|
protectedvirtual |
Returns the firmware revision ({firmware} {version})
T:System.InvalidOperationException | If the reader return an error |
T:System.TimeoutException | Thrown if the reader does not responding in time |
T:System.ObjectDisposedException | If the reader is not connected or the connection is lost |
Implements MetraTecDevices.MetratecReader< T >.
|
getsetprotected |
Current antenna port.
|
getsetprotected |
True, if a single antenna is in use.