147 , receiveRingSize_(static_cast<
Messaging::UInt32>(-1))
149 , socketBufferSize_(8 * 1024 * 1024)
173 return memoryPolicy_;
180 memoryPolicy_ = policy;
193 return receiveRingSize_;
206 receiveRingSize_ = ringSize;
239 return socketBufferSize_;
251 socketBufferSize_ = bufferSize;
294 toStr(str, settings);
321 void info(std::string&)
override;
338 Workhorse* workhorse_;
#define ONIXS_CMEMDH_NAMESPACE_BEGIN
#define ONIXS_CMEMDH_LTWT
#define ONIXS_CMEMDH_NAMESPACE_END
#define ONIXS_CMEMDH_EXPORTED
NetFeedEngineSettings()
Initializes the settings with the default logger.
const std::string & engineId() const noexcept
Returns the identifier generated for this engine.
std::string about()
Returns information about the actual feed-engine implementation.
NetFeedEngine(const NetFeedEngineSettings &settings=NetFeedEngineSettings{})
Constructs an engine and generates its identifier.
Base attributes of market data feed.
SolarflareFeedEngineOperatingMode::Enum mode() const
The operational mode for the Feed Engine.
void mode(SolarflareFeedEngineOperatingMode::Enum mode)
Defines the operational mode for the Feed Engine.
void memoryPolicy(SolarflareFeedEngineMemoryPolicy::Enum policy)
Sets the memory-allocation policy used for Solarflare receive buffers.
void socketBufferSize(Messaging::UInt32 bufferSize)
Messaging::UInt32 receiveRingSize() const
Messaging::UInt32 cacheSize() const
void receiveRingSize(Messaging::UInt32 ringSize)
~SolarflareFeedEngineSettings()=default
Cleans everything up.
void watch(WatchService &watch)
void cacheSize(Messaging::UInt32 cacheSize)
Messaging::UInt32 socketBufferSize() const
WatchService & watch() const
SolarflareFeedEngineMemoryPolicy::Enum memoryPolicy() const
Returns the memory-allocation policy used for Solarflare receive buffers.
SolarflareFeedEngineSettings()
void info(std::string &) override
NetFeedLink & allocate(const NetFeed &) override
Allocates a link for the given feed.
NetFeedEngineProcessResult process() override
WatchService & watch() override
~SolarflareFeedEngine() override
Destructs the given instance.
SolarflareFeedEngine(const SolarflareFeedEngineSettings &)
Initializes the engine according to the given configuration.
std::uint32_t UInt32
uInt32.
void toStr(std::string &str, BookState::Enum bookState)
Appends a string representation of a book state.
Controls how memory backing Solarflare ef_vi receive-buffer pools is allocated.
Messaging::UInt32 Base
Integral base type used to store or serialize values of Enum.
Enum
Available memory-allocation policies.
@ RequireHuge
Requires HugeTLB pages.
@ Native
Uses regular heap memory aligned to the operating system's native page size.
@ PreferHuge
Prefers HugeTLB pages and falls back to Native if allocation fails.
Defines modes in with the Solarflare Feed Engine can operate.
Enum
Defines modes in with the Solarflare Feed Engine can operate.
Messaging::UInt32 Base
Underlying integral type for the enum.