Files
turboPmac/src/pmacPvt.h
T
ponsin_h ecbb7ce2fe
Test And Build / Lint (push) Failing after 5s
Test And Build / Build (push) Failing after 6s
writting octet should be good
2026-08-06 13:23:43 +02:00

42 lines
1.4 KiB
C++

#ifndef PMAC_PVT_H
#define PMAC_PVT_H
#include "asynPortDriver.h"
#include "pmacEthernetCmd.h"
#include <string>
class PmacPvt : public asynPortDriver {
public:
PmacPvt(const char *portName, int maxAddr, int interfaceMask,
int interruptMask, int asynFlags, int autoConnect, int priority,
int stackSize)
: asynPortDriver(portName, maxAddr, interfaceMask, interruptMask,
asynFlags, autoConnect, priority, stackSize);
int addr;
asynInterface int32Interface;
asynInt32 *pint32; /* The methods we're overriding */
void *int32Pvt;
asynInterface octetInterface;
asynOctet *poctet; /* The methods we're overriding */
void *octetPvt;
asynUser *pasynUser; /* For connect/disconnect reporting */
EthernetCommand poutCmd;
EthernetCommand pinCmd;
char *inBuf;
unsigned int inBufHead;
unsigned int inBufTail;
asynStatus writeOctet(asynUser *pasynUser, const char *value,
size_t maxChars, size_t *nActual) override;
asynStatus readOctet(asynUser *pasynUser, char *value, size_t maxChars,
size_t *nActual, int *eomReason) override;
asynStatus flushOctet(asynUser *pasynUser) override;
private:
asynStatus readResponse(asynUser *pasynUser, size_t maxchars,
size_t *nbytesTransfered, int *eomReason);
};
#endif