Classes Files

Wombat::MamaTransport

More…

#include <MamaTransport.h>

Public Functions

  Name
  MamaTransport()
virtual ~MamaTransport()
  MamaTransport(mamaTransport cTransport)
void create(const char * name, mamaBridge bridgeImpl)
void setName(const char * name)
const char * getName() const
const char * getMiddleware() const
double getOutboundThrottle(mamaThrottleInstance instance =MAMA_THROTTLE_DEFAULT) const
void setOutboundThrottle(double outboundThrottle, mamaThrottleInstance instance =MAMA_THROTTLE_DEFAULT)
void setTransportTopicCallback(MamaTransportTopicEventCallback * callback)
void getTransportCallbackQueue(MamaQueue * queue)
MamaQueue * getTransportCallbackQueue()
void setTransportCallback(MamaTransportCallback * callback)
void setSymbolMap(const MamaSymbolMap * mapper)
const MamaSymbolMap * getSymbolMap() const
void setDescription(const char * description)
const char * getDescription() const
MamaConnection * findConnection(const char * IpAddress, uint16_t port)
virtual void getAllConnections(MamaConnection **& list, uint32_t & len)
virtual void freeAllConnections(MamaConnection ** list, uint32_t len)
virtual void getAllServerConnections(MamaServerConnection **& list, uint32_t & len)
virtual void freeAllServerConnections(MamaServerConnection ** list, uint32_t & len)
void setInvokeQualityForAllSubscs(bool invokeQualityForAllSubscs)
bool getInvokeQualityForAllSubscs() const
mamaQuality getQuality() const
void requestConflation() const
void requestEndConflation() const
MamaQueue * getTransportCallbackQueue() const
void setTransportCallbackQueue(MamaQueue * queue)
mamaTransport getCValue()
const mamaTransport getCValue() const
void * getNativeTransport(int index)
void disableRefresh(bool disable)

Public Attributes

  Name
MamaTransportImpl * mPimpl

Detailed Description

class Wombat::MamaTransport;

The MamaTransport class provides market data functionality.

Public Functions Documentation

function MamaTransport

MamaTransport()

Construct a MamaTransport. Call create to create the transport.

function ~MamaTransport

virtual ~MamaTransport()

function MamaTransport

MamaTransport(
    mamaTransport cTransport
)

Construct a MamaTransport that wraps a mamaTransport from the C API. Mama uses this internally. C++ Applications should create C++ MamaTransport objects through the no-argument constructor, and call MamaTransport::create().

MamaTransport objects created with this method do not deallocate or destroy the underlying c Transport because that responsibility lies with the creator.

function create

void create(
    const char * name,
    mamaBridge bridgeImpl
)

Parameters:

  • name The transport name
  • bridgeImpl The middleware-specific bridge structure

Create a transport. Platform specific parameters are read from the properties file. The parameters are dependent on the underlying messaging transport.

function setName

void setName(
    const char * name
)

Parameters:

  • name The transport name.

set the transport name. The name string is copied by the object.

function getName

const char * getName() const

get the transport name.

function getMiddleware

const char * getMiddleware() const

get the middleware name.

function getOutboundThrottle

double getOutboundThrottle(
    mamaThrottleInstance instance =MAMA_THROTTLE_DEFAULT
) const

Return: The throttle rate.

Return the outbound throttle rate in messages/second.

function setOutboundThrottle

void setOutboundThrottle(
    double outboundThrottle,
    mamaThrottleInstance instance =MAMA_THROTTLE_DEFAULT
)

Parameters:

  • outboundThrottle The rate in messages/second.
  • instance the mamaThrottleInstance to use

Set the throttle rate for outbound message. This rate controls the rate at which methods sent with sendWithThrottle (void) are sent. A value of 0.0 disables throttling.

function setTransportTopicCallback

void setTransportTopicCallback(
    MamaTransportTopicEventCallback * callback
)

Set the transport topic callback

function getTransportCallbackQueue

void getTransportCallbackQueue(
    MamaQueue * queue
)

Set the queue that the app provided for transport callbacks.

function getTransportCallbackQueue

MamaQueue * getTransportCallbackQueue()

Get the queue that the app provided for transport callbacks.

function setTransportCallback

void setTransportCallback(
    MamaTransportCallback * callback
)

Set the transport callback.

function setSymbolMap

void setSymbolMap(
    const MamaSymbolMap * mapper
)

Parameters:

  • mapper A symbol mapping class.

Set the symbology mapping class.

function getSymbolMap

const MamaSymbolMap * getSymbolMap() const

Return the symbology mapping class.

function setDescription

void setDescription(
    const char * description
)

Parameters:

  • description The transport description.

Set the description for the transport. The description string is copied by the object.

function getDescription

const char * getDescription() const

Return: const char* The transport description.

Return the description string for the transport. Do not alter or free the string returned by this method.

function findConnection

MamaConnection * findConnection(
    const char * IpAddress,
    uint16_t port
)

function getAllConnections

virtual void getAllConnections(
    MamaConnection **& list,
    uint32_t & len
)

function freeAllConnections

virtual void freeAllConnections(
    MamaConnection ** list,
    uint32_t len
)

function getAllServerConnections

virtual void getAllServerConnections(
    MamaServerConnection **& list,
    uint32_t & len
)

function freeAllServerConnections

virtual void freeAllServerConnections(
    MamaServerConnection ** list,
    uint32_t & len
)

function setInvokeQualityForAllSubscs

void setInvokeQualityForAllSubscs(
    bool invokeQualityForAllSubscs
)

Parameters:

  • invokeQualityForAllSubscs Whether to invoke quality callback for all subscriptions

Set whether to invoke the quality callback for all subscriptions whenever a data quality event occurs (the default), or whether to invoke the quality callback only when data subsequently arrives for a subscription.

If set to true, an onQuality callback will be invoked for a subscription whenever a data quality event occurs on the transport, even in between updates for that description. If set to false, the onQuality callback will not be called when the data quality event occurs on the transport. However, it will still be invoked when an update arrives for the subscription.

function getInvokeQualityForAllSubscs

bool getInvokeQualityForAllSubscs() const

Return: Whether transport has been set to invoke quality callback for all subscriptions

Get whether the transport has been set to invoke the quality callback for all subscriptions whenever a data quality event occurs.

function getQuality

mamaQuality getQuality() const

Return: The Quality of the transport

Get the data quality for the transport.

Currently only supported for the Tibco RV middleware. Returns OK for all other middlewares.

function requestConflation

void requestConflation() const

Request conflation for the transport.

Currently only supported for WMW.

function requestEndConflation

void requestEndConflation() const

Request an end to conflation for the transport.

Currently only supported for WMW.

function getTransportCallbackQueue

MamaQueue * getTransportCallbackQueue() const

Get the queue for the transport callbacks

function setTransportCallbackQueue

void setTransportCallbackQueue(
    MamaQueue * queue
)

Set the queue for the transport callbacks

function getCValue

mamaTransport getCValue()

function getCValue

const mamaTransport getCValue() const

function getNativeTransport

void * getNativeTransport(
    int index
)

Return the underlying native transport. Applications should avoid this method if possible as it may result in non-portable, middleware specific code. Callers must cast the nativeTport to the appropriate type.

Note: this method returns the underlying C construct not a C++ object.

function disableRefresh

void disableRefresh(
    bool disable
)

Disable refreshing of subscriptions on this transport.

Public Attributes Documentation

variable mPimpl

MamaTransportImpl * mPimpl;

Updated on 2023-03-31 at 15:29:26 +0100