Program Listing for File NetworkConnectionParametersBuilder.h¶
↰ Return to documentation for file (src/cip/connectionManager/NetworkConnectionParametersBuilder.h)
//
// Created by Vincent Prince on 05/22/20.
//
#ifndef EIPSCANNER_CIP_CONNECTIONMANAGER_NETWORKCONNECTIONPARAMETERSBUILDER_H
#define EIPSCANNER_CIP_CONNECTIONMANAGER_NETWORKCONNECTIONPARAMETERSBUILDER_H
#include "cip/Types.h"
namespace eipScanner {
namespace cip {
namespace connectionManager {
class NetworkConnectionParametersBuilder {
public:
enum RedundantOwner {
EXCLUSIVE,
REDUNDANT,
};
enum ConnectionType {
NULL_TYPE,
MULTICAST,
P2P,
RESERVED,
};
enum Priority {
LOW_PRIORITY,
HIGH_PRIORITY,
SCHEDULED,
URGENT,
};
enum Type {
FIXED,
VARIABLE,
};
NetworkConnectionParametersBuilder(CipUdint val = 0, bool lfo = false);
virtual ~NetworkConnectionParametersBuilder() = default;
NetworkConnectionParametersBuilder setRedundantOwner(RedundantOwner val);
NetworkConnectionParametersBuilder& setConnectionType(ConnectionType val);
NetworkConnectionParametersBuilder& setPriority(Priority val);
NetworkConnectionParametersBuilder& setType(Type val);
NetworkConnectionParametersBuilder& setConnectionSize(CipUint val);
CipUdint build();
RedundantOwner getRedundantOwner() const;
ConnectionType getConnectionType() const;
Priority getPriority() const;
Type getType() const;
CipUint getConnectionSize() const;
private:
CipUdint _value;
bool _lfo;
};
}
}
}
#endif //EIPSCANNER_CIP_CONNECTIONMANAGER_NETWORKCONNECTIONPARAMETERSBUILDER_H