B2BITS FIX Antenna HFT  1.0.13
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | List of all members
Engine::FixEngine Class Reference

FIX Engine interface. More...

#include <B2BITS_FixEngine.h>

+ Collaboration diagram for Engine::FixEngine:

Classes

struct  InitParameters
 FixEngine::init parameters. More...
 

Public Member Functions

FixEngineImpl * _impl ()
 
void backupLogFile (const std::string &backupFilePath)
 Backups engine's log file under the given name and opens a new one. More...
 
Bovespa::BovespaApplication * createBovespaApplication (Bovespa::BovespaApplicationParams const &params, Bovespa::BovespaApplicationListener *appListener=NULL)
 Creates instance of the Bovespa FIX/FAST adapter. More...
 
Bovespa::BovespaApplication * createBovespaApplication (Bovespa::BovespaApplicationParams const &params, MarketData::DataReaderAbstract *dataReader, Bovespa::BovespaApplicationListener *appListener=NULL)
 
Cqg::MDApplication * createCqgMDApplication (Cqg::MDApplicationListener *listener, Cqg::MDApplicationParams const &params, MarketData::DataReaderAbstract *dataReader=NULL)
 Creates instance of the CQG FIX/FAST Market Data adapter It is user's responsibility to call Cqg::MDApplication::release method. More...
 
Cboe::Csm::CsmApplication * createCsmApplication (Cboe::Csm::CsmApplicationParams const &params, Cboe::Csm::CsmApplicationListener *appListener=NULL)
 Creates instance of the CBOE CSM adapter. More...
 
Cboe::Csm::CsmApplication * createCsmApplication (Cboe::Csm::CsmApplicationParams const &params, Cboe::Csm::DataReaderAbstract *dataReader, Cboe::Csm::CsmApplicationListener *appListener=NULL)
 
Eurex::Application * createEurexApplication (Eurex::ConnectionManager *connectionManager, const std::string &configurationFilename)
 Creates an instance of the Eurex Market Data Adapter. More...
 
Eurex::Application * createEurexApplication (Eurex::ConnectionManager *connectionManager, const std::string &name, const Eurex::ApplicationOptions &applicationOptions)
 Creates an instance of the Eurex Market Data Adapter. More...
 
FastCoder * createFastCoder (std::string const &template_fn, Engine::FIXVersion protocolVersion)
 Creates FastCoder It is user's responsibility to destroy FastCoder instance. More...
 
FastDecoder * createFastDecoder (std::string const &template_fn, Engine::FIXVersion protocolVersion)
 Creates FastDecoder It is user's responsibility to destroy FastDecoder instance. More...
 
SessioncreateFastSession (std::string const &templateFn, Application *pApp, const std::string &senderCompID, const std::string &targetCompID, FIXVersion appVer, const SessionExtraParameters *pParam=NULL, const MessageStorageType storageType=default_storageType)
 Creates FIX-over-FAST session It is user's responsibility to call Session::release method. More...
 
ProtocolID createFixParser (std::string const &scpProtocolName, FixVersionToProtocolName const *appProtocols=NULL)
 Creates protocol using loaded protocol definition files. More...
 
Globex2::GlobexApplication * createGlobexApplication (Globex2::GlobexApplicationParams const &params, Globex2::GlobexApplicationListener *appListener=NULL)
 Creates instance of the CME Globex FIX/FAST adapter v.2 It is user's responsibility to call Globex::MDApplication::release method. More...
 
Globex2::GlobexApplication * createGlobexApplication (Globex2::GlobexApplicationParams const &params, MarketData::DataReaderAbstract *dataReader, Globex2::GlobexApplicationListener *appListener=NULL)
 Creates instance of the CME Globex FIX/FAST adapter v.2 It is user's responsibility to call Globex::MDApplication::release method. More...
 
Jse::Application * createJseApplication (Jse::ConnectionManager *connectionManager, const std::string &configurationFilename)
 Creates an instance of the JSE Market Data Adapter. More...
 
Jse::Application * createJseApplication (Jse::ConnectionManager *connectionManager, const std::string &name, const Jse::ApplicationOptions &applicationOptions)
 Creates an instance of the JSE Market Data Adapter. More...
 
Globex::MDApplication * createMDApplication (Globex::MDApplicationParams const &params, Globex::MDApplicationListener *appListener=NULL)
 Creates instance of the CME Globex FIX/FAST adapter It is user's responsibility to call Globex::MDApplication::release method. More...
 
Globex::MDApplication * createMDApplication (Globex::MDApplicationParams const &params, Globex::DataReaderAbstract *dataReader, Globex::MDApplicationListener *appListener=NULL)
 Creates instance of the CME Globex FIX/FAST adapter It is user's responsibility to call Globex::MDApplication::release method. More...
 
Micex::Mfix::MDApplication * createMICEXApplication (Micex::Mfix::MDApplicationParams const &params, Micex::Mfix::MDApplicationListener *appListener=NULL)
 Creates instance of the MICEX MFIX adapter It is user's responsibility to call Micex::Mfix::MDApplication::release method. More...
 
Micex::Mfix::MDApplication * createMICEXApplication (Micex::Mfix::MDApplicationParams const &params, Micex::Mfix::DataReaderAbstract *dataReader, Micex::Mfix::MDApplicationListener *appListener=NULL)
 Creates instance of the CME Globex FIX/FAST adapter It is user's responsibility to call Micex::Mfix::MDApplication::release method. More...
 
ProtocolID createProtocol (std::string const &name, FIXVersion baseVer, std::string const &additionalXml)
 Register new custom FIX Protocol and returns its identifier. More...
 
SessioncreateSession (Application *pApp, const std::string &senderCompID, const std::string &targetCompID, FIXVersion appVer, const SessionExtraParameters *pParam=NULL, const MessageStorageType storageType=default_storageType, UnderlyingProtocol underlyingProtocolType=FIX_TCP)
 Creates a new FIX Session. More...
 
SessioncreateSession (Application *pApp, const std::string &senderCompID, const std::string &targetCompID, ProtocolID scpID, const SessionExtraParameters *pParam=NULL, const MessageStorageType storageType=default_storageType, FIXVersion defaultAppProtocol=NA)
 Creates a new FIX Session. More...
 
SessioncreateSession (Application *pApp, const std::string &senderCompID, const std::string &targetCompID, const std::string &protocolName, const SessionExtraParameters *pParam=NULL, const MessageStorageType storageType=default_storageType, FIXVersion defaultAppProtocol=NA)
 Creates a new FIX Session. More...
 
AdminApplication * getAdminApplication ()
 Returns administrative application. More...
 
FIXVersion getBaseProtocol (ProtocolID protocolID) const
 Returns base FIX protocol version. More...
 
System::u64 getCurrGlobalMsgId () const
 Returs the global message id. More...
 
FixDictionary2::Dictionary const * getDictionary () const
 Returns reference to protocol dictionary. More...
 
int getListenPort ()
 Returns Engine's listen port. More...
 
ListenPorts getListenPorts ()
 Returns Engine's listen ports. More...
 
ListenPorts getNonAccelListenPorts ()
 Returns Engine's non accelerated listen ports. More...
 
const FAPropertiesgetProperties () const
 Returns settings. More...
 
ProtocolID getProtocolID (const std::string &name) const
 Returns unique protocol ID. More...
 
Engine::AsciiString getProtocolName (ProtocolID protocolID) const
 Returns unique protocol name. More...
 
Engine::SessionsManagergetSessionsManager ()
 Returns the current SessionsManager. More...
 
void getStatistics (Statistics *apS)
 Returns the statistical information. More...
 
Engine::FIXTagVisitorFactorygetTagVisitorFactory ()
 Returns the current Receive Data Listener. More...
 
MessageStorageType getUnregisteredAcceptorSessionStorageType () const
 Returns the default unregistered session's storage type. More...
 
void loadProtocolFile (std::string const &fileName)
 Loads protocol definition/customization file. More...
 
void onNewSpinWorkerThread ()
 Notifies the engine that a user thread for message sending was created. More...
 
void registerAdminApplication (AdminApplication *app)
 Register administrative application. More...
 
void registerEventListener (Engine::EventListener *apListener)
 Registers the given EventListener with FixEngine. More...
 
void registerSessionsManager (SessionsManager *apManager)
 Registers SessionsManager with the engine. More...
 
void seedGlobalMsgId (System::u64 globalMsgId)
 Sets the global messages id. More...
 
void setCmiUserMapping (boost::shared_ptr< Parser::BinaryFixMappingI > userMapping)
 
void setUnregisteredAcceptorSessionStorageType (const MessageStorageType type)
 Sets the default unregistered session's storage type. More...
 
void startListeningIncomingConnections ()
 Makes FixEngine listen to incoming connections. More...
 
void stop (void)
 Stops the engine's worker threads. More...
 
bool unregisterEventListener (Engine::EventListener *apListener)
 Unregisters the given EventListener. More...
 

Static Public Member Functions

static void clearAdditionalFields ()
 Destroys the additional fields. More...
 
static void destroy ()
 Destroys the instance of this class. More...
 
static System::u64 generateGlobalMsgId ()
 Returs the new global message id. More...
 
static const EngineProperties getEnginePropertiesDefaults ()
 Retrieves properties defaults. More...
 
static std::string getEngineVersion ()
 Returns version of the FixEngine. More...
 
static FixEngineinit (InitParameters const &params)
 Initializes the Engine. More...
 
static FixEngineinit (const std::string &propertiesFileName="", int listenPort=-1, const std::string &engineRoot="", const std::string &additionalFields="", const std::string &licenseKey="", bool initUtilsLogger=true)
 Initializes the Engine. More...
 
static FixEngineinit (const EngineProperties &engineProperties, const std::string &licenseKey="", bool initUtilsLogger=true)
 Initializes the Engine. More...
 
static bool initialized ()
 Returns true if FixEngine was initialized; false otherwise. More...
 
static void setAdditionalFields (const std::string &propertiesFileName="", const std::string &engineRoot="", const std::string &additionalFields="")
 Initializes the additional fields. More...
 
static FixEnginesingleton ()
 Returns an instance of this class. More...
 

Public Attributes

FixEngineImpl * pImpl_
 Implementation details. More...
 

Static Public Attributes

static FixEngines_pSingleton
 

Detailed Description

FIX Engine interface.

Member Function Documentation

FixEngineImpl* Engine::FixEngine::_impl ( )
void Engine::FixEngine::backupLogFile ( const std::string &  backupFilePath)

Backups engine's log file under the given name and opens a new one.

Parameters
backupFilePaththe current engine's log will be moved to this path.
See Also
logFileName_.
static void Engine::FixEngine::clearAdditionalFields ( )
static

Destroys the additional fields.

Note
Do not use it with destroy() method.
Bovespa::BovespaApplication* Engine::FixEngine::createBovespaApplication ( Bovespa::BovespaApplicationParams const &  params,
Bovespa::BovespaApplicationListener *  appListener = NULL 
)

Creates instance of the Bovespa FIX/FAST adapter.

Bovespa::BovespaApplication* Engine::FixEngine::createBovespaApplication ( Bovespa::BovespaApplicationParams const &  params,
MarketData::DataReaderAbstract *  dataReader,
Bovespa::BovespaApplicationListener *  appListener = NULL 
)
Note
For testing purposes only.
Cqg::MDApplication* Engine::FixEngine::createCqgMDApplication ( Cqg::MDApplicationListener *  listener,
Cqg::MDApplicationParams const &  params,
MarketData::DataReaderAbstract *  dataReader = NULL 
)

Creates instance of the CQG FIX/FAST Market Data adapter It is user's responsibility to call Cqg::MDApplication::release method.

Cboe::Csm::CsmApplication* Engine::FixEngine::createCsmApplication ( Cboe::Csm::CsmApplicationParams const &  params,
Cboe::Csm::CsmApplicationListener *  appListener = NULL 
)

Creates instance of the CBOE CSM adapter.

Cboe::Csm::CsmApplication* Engine::FixEngine::createCsmApplication ( Cboe::Csm::CsmApplicationParams const &  params,
Cboe::Csm::DataReaderAbstract *  dataReader,
Cboe::Csm::CsmApplicationListener *  appListener = NULL 
)
Note
For testing purposes only.
Eurex::Application* Engine::FixEngine::createEurexApplication ( Eurex::ConnectionManager *  connectionManager,
const std::string &  configurationFilename 
)

Creates an instance of the Eurex Market Data Adapter.

The application should be destroyed with Application::release(). connectionManager should stay alive until Application::release() is called. connectionManager can be 0 to create and use the default implementation.

Eurex::Application* Engine::FixEngine::createEurexApplication ( Eurex::ConnectionManager *  connectionManager,
const std::string &  name,
const Eurex::ApplicationOptions &  applicationOptions 
)

Creates an instance of the Eurex Market Data Adapter.

The application should be destroyed with Application::release(). connectionManager should stay alive until Application::release() is called. connectionManager can be 0 to create and use the default implementation.

FastCoder* Engine::FixEngine::createFastCoder ( std::string const &  template_fn,
Engine::FIXVersion  protocolVersion 
)

Creates FastCoder It is user's responsibility to destroy FastCoder instance.

FastDecoder* Engine::FixEngine::createFastDecoder ( std::string const &  template_fn,
Engine::FIXVersion  protocolVersion 
)

Creates FastDecoder It is user's responsibility to destroy FastDecoder instance.

Session* Engine::FixEngine::createFastSession ( std::string const &  templateFn,
Application pApp,
const std::string &  senderCompID,
const std::string &  targetCompID,
FIXVersion  appVer,
const SessionExtraParameters pParam = NULL,
const MessageStorageType  storageType = default_storageType 
)

Creates FIX-over-FAST session It is user's responsibility to call Session::release method.

ProtocolID Engine::FixEngine::createFixParser ( std::string const &  scpProtocolName,
FixVersionToProtocolName const *  appProtocols = NULL 
)

Creates protocol using loaded protocol definition files.

Parameters
[in]scpProtocolNameProtocol name (attribute 'id' in the XML file) to create parser for
[in]appProtocolsSet of application level protocol. Required if SCP protocol is FIXT 1.1.
Globex2::GlobexApplication* Engine::FixEngine::createGlobexApplication ( Globex2::GlobexApplicationParams const &  params,
Globex2::GlobexApplicationListener *  appListener = NULL 
)

Creates instance of the CME Globex FIX/FAST adapter v.2 It is user's responsibility to call Globex::MDApplication::release method.

Globex2::GlobexApplication* Engine::FixEngine::createGlobexApplication ( Globex2::GlobexApplicationParams const &  params,
MarketData::DataReaderAbstract *  dataReader,
Globex2::GlobexApplicationListener *  appListener = NULL 
)

Creates instance of the CME Globex FIX/FAST adapter v.2 It is user's responsibility to call Globex::MDApplication::release method.

Note
For testing purposes only.
Jse::Application* Engine::FixEngine::createJseApplication ( Jse::ConnectionManager *  connectionManager,
const std::string &  configurationFilename 
)

Creates an instance of the JSE Market Data Adapter.

The application should be destroyed with Application::release(). connectionManager should stay alive until Application::release() is called. connectionManager can be 0 to create and use the default implementation.

Jse::Application* Engine::FixEngine::createJseApplication ( Jse::ConnectionManager *  connectionManager,
const std::string &  name,
const Jse::ApplicationOptions &  applicationOptions 
)

Creates an instance of the JSE Market Data Adapter.

The application should be destroyed with Application::release(). connectionManager should stay alive until Application::release() is called. connectionManager can be 0 to create and use the default implementation.

Globex::MDApplication* Engine::FixEngine::createMDApplication ( Globex::MDApplicationParams const &  params,
Globex::MDApplicationListener *  appListener = NULL 
)

Creates instance of the CME Globex FIX/FAST adapter It is user's responsibility to call Globex::MDApplication::release method.

Globex::MDApplication* Engine::FixEngine::createMDApplication ( Globex::MDApplicationParams const &  params,
Globex::DataReaderAbstract *  dataReader,
Globex::MDApplicationListener *  appListener = NULL 
)

Creates instance of the CME Globex FIX/FAST adapter It is user's responsibility to call Globex::MDApplication::release method.

Note
For testing purposes only.
Micex::Mfix::MDApplication* Engine::FixEngine::createMICEXApplication ( Micex::Mfix::MDApplicationParams const &  params,
Micex::Mfix::MDApplicationListener *  appListener = NULL 
)

Creates instance of the MICEX MFIX adapter It is user's responsibility to call Micex::Mfix::MDApplication::release method.

Micex::Mfix::MDApplication* Engine::FixEngine::createMICEXApplication ( Micex::Mfix::MDApplicationParams const &  params,
Micex::Mfix::DataReaderAbstract *  dataReader,
Micex::Mfix::MDApplicationListener *  appListener = NULL 
)

Creates instance of the CME Globex FIX/FAST adapter It is user's responsibility to call Micex::Mfix::MDApplication::release method.

Note
For testing puproses only
ProtocolID Engine::FixEngine::createProtocol ( std::string const &  name,
FIXVersion  baseVer,
std::string const &  additionalXml 
)

Register new custom FIX Protocol and returns its identifier.

Parameters
nameUnique name of the protocol
baseVerBase FIX Version
additionalXmlFIX Protocol customization file
Exceptions
Utils::ExceptionIf protocol with given name already exists or additionalXml points to default additional.xml file.
Returns
Unique FIX protocol identifier
Session* Engine::FixEngine::createSession ( Application pApp,
const std::string &  senderCompID,
const std::string &  targetCompID,
FIXVersion  appVer,
const SessionExtraParameters pParam = NULL,
const MessageStorageType  storageType = default_storageType,
UnderlyingProtocol  underlyingProtocolType = FIX_TCP 
)

Creates a new FIX Session.

It is user's responsibility to call Session::release method.

Parameters
pAppa pointer to the Application that will process the incoming messages.
senderCompIDSenderCompID of the session.
targetCompIDTargetCompID of the session.
appVerApplication FIX protocol version or default application FIX protocol in case of FIXT 1.1 session.
pParaman option session parameters, can be NULL.
storageType- type of the message storage
Warning
Do not delete the Application while the session is not terminated.
Note
two sessions with the same values of senderCompID and targetCompID can not be created.
Returns
a pointer to the created session.
Session* Engine::FixEngine::createSession ( Application pApp,
const std::string &  senderCompID,
const std::string &  targetCompID,
ProtocolID  scpID,
const SessionExtraParameters pParam = NULL,
const MessageStorageType  storageType = default_storageType,
FIXVersion  defaultAppProtocol = NA 
)

Creates a new FIX Session.

It is user's responsibility to call Session::release method.

Parameters
pAppa pointer to the Application that will process the incoming messages.
senderCompIDSenderCompID of the session.
targetCompIDTargetCompID of the session.
scpIDFIX session control protocol identifier.
pParaman option session parameters, can be NULL.
storageTypeMessage storage type
defaultAppProtocolDefault application FIX protocol version. Required if protocolID points to FIXT 1.1 protocol.
Warning
Do not delete the Application while the session is not terminated.
Note
two sessions with the same values of senderCompID and targetCompID can not be created.
Returns
a pointer to the created session.
Session* Engine::FixEngine::createSession ( Application pApp,
const std::string &  senderCompID,
const std::string &  targetCompID,
const std::string &  protocolName,
const SessionExtraParameters pParam = NULL,
const MessageStorageType  storageType = default_storageType,
FIXVersion  defaultAppProtocol = NA 
)

Creates a new FIX Session.

It is user's responsibility to call Session::release method.

Parameters
pAppa pointer to the Application that will process the incoming messages.
senderCompIDSenderCompID of the session.
targetCompIDTargetCompID of the session.
protocolNameName of the protocol ('id' attribute in the FIX Dictionary file). FIX Parser for this protocol should be created.
See Also
Engine::FixEngine::createFixParser.
Parameters
pParaman option session parameters, can be NULL.
storageType- type of the message storage
defaultAppProtocolDefault application FIX protocol version. Required if underlyingProtocolType equals FIXT11_TCP or protocolID points to FIXT 1.1 protocol.
Warning
Do not delete the Application while the session is not terminated.
Note
two sessions with the same values of senderCompID and targetCompID can not be created.
Returns
a pointer to the created session.
static void Engine::FixEngine::destroy ( )
static

Destroys the instance of this class.

Note
Must be called after the using of FIX Engine to free the allocated resources.
static System::u64 Engine::FixEngine::generateGlobalMsgId ( )
static

Returs the new global message id.

AdminApplication* Engine::FixEngine::getAdminApplication ( )

Returns administrative application.

If there is no registered custom application, embedded is returned.

FIXVersion Engine::FixEngine::getBaseProtocol ( ProtocolID  protocolID) const

Returns base FIX protocol version.

Exceptions
Utils::ExceptionIf protocol with given ID is not found.
Returns
base FIX protocol version.
System::u64 Engine::FixEngine::getCurrGlobalMsgId ( ) const

Returs the global message id.

FixDictionary2::Dictionary const* Engine::FixEngine::getDictionary ( ) const

Returns reference to protocol dictionary.

static const EngineProperties Engine::FixEngine::getEnginePropertiesDefaults ( )
static

Retrieves properties defaults.

Returns
FIX Engine configuration parameters
static std::string Engine::FixEngine::getEngineVersion ( )
static

Returns version of the FixEngine.

Returns
version of the FixEngine
int Engine::FixEngine::getListenPort ( )

Returns Engine's listen port.

ListenPorts Engine::FixEngine::getListenPorts ( )

Returns Engine's listen ports.

ListenPorts Engine::FixEngine::getNonAccelListenPorts ( )

Returns Engine's non accelerated listen ports.

const FAProperties* Engine::FixEngine::getProperties ( ) const

Returns settings.

ProtocolID Engine::FixEngine::getProtocolID ( const std::string &  name) const

Returns unique protocol ID.

Parameters
[in]Uniqueprotocol name
Exceptions
Utils::ExceptionIf protocol with given name is not found.
Returns
unique protocol ID.
Engine::AsciiString Engine::FixEngine::getProtocolName ( ProtocolID  protocolID) const

Returns unique protocol name.

Parameters
[in]protocolIDUnique protocol ID
Exceptions
Utils::ExceptionIf protocol with given ID is not found.
Returns
unique protocol name.
Engine::SessionsManager* Engine::FixEngine::getSessionsManager ( )

Returns the current SessionsManager.

void Engine::FixEngine::getStatistics ( Statistics *  apS)

Returns the statistical information.

Parameters
[out]apSInstance of Statistics to store result.
Engine::FIXTagVisitorFactory* Engine::FixEngine::getTagVisitorFactory ( )

Returns the current Receive Data Listener.

MessageStorageType Engine::FixEngine::getUnregisteredAcceptorSessionStorageType ( ) const

Returns the default unregistered session's storage type.

Returns
type storage type that will be used in new sessions.
static FixEngine* Engine::FixEngine::init ( InitParameters const &  params)
static

Initializes the Engine.

Parameters
paramsEngine parameters.
Returns
pointer to an instance of this class.
Note
Must be called before any other method of this library.
static FixEngine* Engine::FixEngine::init ( const std::string &  propertiesFileName = "",
int  listenPort = -1,
const std::string &  engineRoot = "",
const std::string &  additionalFields = "",
const std::string &  licenseKey = "",
bool  initUtilsLogger = true 
)
static

Initializes the Engine.

Parameters
propertiesFileNamethe FIX Engine configuration parameters file name. If it is equal to "", then "./engine.properties" is used.
listenPortEngine's listen port. Overrides the value from the properties file. If it is equal to -1 then the value from the proterties file is used.
engineRootThe top of the directory tree under which the engine's configuration, and log files are kept. Do NOT add a slash at the end of the directory path. Overrides the value from the properties file. If it is equal to "", then the value from the properties file is used.
additionalFieldsSpecifies additional messages fields.
licenseKeyLicense key
initUtilsLoggerSpecifies either FixEngine should initalize LogSystem. Pass true to force FixEngine to initialize LogSystem; false otherwise.
Returns
pointer to an instance of this class.
Note
Must be called before any other method of this library.
static FixEngine* Engine::FixEngine::init ( const EngineProperties engineProperties,
const std::string &  licenseKey = "",
bool  initUtilsLogger = true 
)
static

Initializes the Engine.

Parameters
enginePropertiesEngine parameters. List of parameters can be find in the B2BITS_FAProperties.h file.
licenseKeyLicense key
initUtilsLoggerSpecifies either FixEngine should initalize LogSystem. Pass true to force FixEngine to initialize LogSystem; false otherwise.
Returns
pointer to an instance of this class.
Note
Must be called before any other method of this library.
static bool Engine::FixEngine::initialized ( )
static

Returns true if FixEngine was initialized; false otherwise.

void Engine::FixEngine::loadProtocolFile ( std::string const &  fileName)

Loads protocol definition/customization file.

Parameters
[in]fileNamePath to the protocol file
void Engine::FixEngine::onNewSpinWorkerThread ( )

Notifies the engine that a user thread for message sending was created.

Allows the engine to perform an initialization. Optional. An initialization will be delayed until the first sending if this method is not called before.

void Engine::FixEngine::registerAdminApplication ( AdminApplication *  app)

Register administrative application.

Parameters
appcustom administrative application.
Exceptions
Utils::Exceptionif administrative application already registered.
void Engine::FixEngine::registerEventListener ( Engine::EventListener apListener)

Registers the given EventListener with FixEngine.

Parameters
apListenerEventListener
void Engine::FixEngine::registerSessionsManager ( SessionsManager apManager)

Registers SessionsManager with the engine.

Parameters
apManagerInstance of SessionsManager.
void Engine::FixEngine::seedGlobalMsgId ( System::u64  globalMsgId)

Sets the global messages id.

static void Engine::FixEngine::setAdditionalFields ( const std::string &  propertiesFileName = "",
const std::string &  engineRoot = "",
const std::string &  additionalFields = "" 
)
static

Initializes the additional fields.

Parameters
propertiesFileNamethe FIX Engine configuration parameters file name. If it is equal to "", then "./engine.properties" is used.
engineRootThe top of the directory tree under which the engine's configuration, and log files are kept. Do NOT add a slash at the end of the directory path. Overrides the value from the properties file. If it is equal to "", then the value from the proterties file is used.
additionalFieldsSpecifies additional messages fields.
Note
Do not use it with init() method.
void Engine::FixEngine::setCmiUserMapping ( boost::shared_ptr< Parser::BinaryFixMappingI userMapping)
void Engine::FixEngine::setUnregisteredAcceptorSessionStorageType ( const MessageStorageType  type)

Sets the default unregistered session's storage type.

Parameters
typestorage type that will be used in new sessions.
static FixEngine* Engine::FixEngine::singleton ( )
static

Returns an instance of this class.

Returns
pointer to an instance of this class.
See Also
init()
void Engine::FixEngine::startListeningIncomingConnections ( )

Makes FixEngine listen to incoming connections.

void Engine::FixEngine::stop ( void  )

Stops the engine's worker threads.

bool Engine::FixEngine::unregisterEventListener ( Engine::EventListener apListener)

Unregisters the given EventListener.

Parameters
apListenerEventListener
Returns
true if the EventListener was found, otherwise false.

Member Data Documentation

FixEngineImpl* Engine::FixEngine::pImpl_

Implementation details.

FixEngine* Engine::FixEngine::s_pSingleton
static