37#ifndef VICPSocketTransport_h
38#define VICPSocketTransport_h
40#include "../xptools/Socket.h"
55 virtual std::string GetConnectionString()
override;
64 virtual bool SendCommand(
const std::string&
cmd)
override;
65 virtual std::string ReadReply(
bool endOnSemicolon =
true, std::function<
void(
float)>
progress =
nullptr)
override;
66 virtual size_t ReadRawData(
size_t len,
unsigned char*
buf, std::function<
void(
float)>
progress =
nullptr)
override;
67 virtual void SendRawData(
size_t len,
const unsigned char*
buf)
override;
69 virtual bool IsCommandBatchingSupported()
override;
70 virtual bool IsConnected()
override;
72 virtual void FlushRXBuffer()
override;
Definition AcceleratorBuffer.h:204
Abstraction of a transport layer for moving SCPI data between endpoints.
Definition SCPITransport.h:53
Class representing a network socket.
Definition Socket.h:65
A SCPI transport tunneled over LeCroy's Virtual Instrument Control Protocol.
Definition VICPSocketTransport.h:50
const std::string & GetHostname() const
Returns the hostname of the scope this transport is connected to.
Definition VICPSocketTransport.h:61
uint8_t m_nextSequence
Next sequence number.
Definition VICPSocketTransport.h:105
uint8_t m_lastSequence
Previous sequence number.
Definition VICPSocketTransport.h:108
static std::string GetTransportName()
Returns the constant string "vicp".
Definition VICPSocketTransport.cpp:101
HEADER_OPS
VICP header opcode values.
Definition VICPSocketTransport.h:76
@ OP_REMOTE
Not used.
Definition VICPSocketTransport.h:81
@ OP_SRQ
GPIB SRQ signal.
Definition VICPSocketTransport.h:90
@ OP_LOCKOUT
Not used.
Definition VICPSocketTransport.h:84
@ OP_CLEAR
Not used.
Definition VICPSocketTransport.h:87
@ OP_EOI
GPIB EOI signal.
Definition VICPSocketTransport.h:96
@ OP_REQ
GPIB REQ signal.
Definition VICPSocketTransport.h:93
@ OP_DATA
Data block.
Definition VICPSocketTransport.h:78
unsigned short m_port
Port our socket is connected to.
Definition VICPSocketTransport.h:117
uint8_t GetNextSequenceNumber()
Gets the next sequence number to be used by a packet.
Definition VICPSocketTransport.cpp:114
Socket m_socket
Socket for communicating with the scope.
Definition VICPSocketTransport.h:111
std::string m_hostname
Hostname our socket is connected to.
Definition VICPSocketTransport.h:114