B2BITS FIX Antenna C++  2.27.0
Namespaces | Classes | Typedefs | Enumerations | Functions | Variables
Engine Namespace Reference

FIX Engine namespace. More...

Namespaces

 BuiltinMessageStorage
 
 FastScp11
 Fast session control protocol (scp) namespace.
 
 FIXPropertiesNames
 List of all engine.properties parameters.
 
 RawDataTypeProcessingStrategies
 
 SessionName
 Session specific parameters prefixes.
 
 SessionParameters
 List of all session specific parameters which can be configured in the engine.properties.
 
 TZTimeHelper
 

Classes

class  AdminApplication
 Administrative application interface. More...
 
class  Application
 Generic application interface. More...
 
class  BasicString
 Represents ASCII std::string. More...
 
class  CacheHolderBase
 
class  DebugMessage
 Represents debug message. More...
 
class  Decimal
 Encapsulates float type. More...
 
class  Error
 Represents error event. More...
 
class  Event
 Generic event. More...
 
class  EventListener
 Basic Event Listener. More...
 
class  FAProperties
 FixEngine's configuration parameters. More...
 
class  FastCodec
 A factory for FastCoder and FastDecoder. More...
 
class  FastCoder
 Encodes FIX messages to FAST messages. More...
 
class  FastDecoder
 Decodes buffers, that contains FAST messages, to FIX messages. More...
 
struct  FastMappingOptions
 
struct  FastSessionExtraParameters
 Parameters of the FIX-over-FAST session. More...
 
class  FieldValueT
 Represents value of field. More...
 
class  FixEngine
 FIX Engine interface. More...
 
struct  FixField
 FIX field (tag and value). More...
 
class  FixFieldsContainer
 Auxiliary class that encapsulates FixFieldsList and helps to use it in another CRT. More...
 
class  FixFieldsFunctor
 Base class for iterating over fields of FIXMessage. More...
 
struct  FIXFieldValue
 It is used for storing the Contents information (data + length). More...
 
class  FIXGroup
 FIX Repeating Group interface. More...
 
class  FIXMessage
 Basic FIX message. More...
 
class  FixMessages
 FIX Engine interface. More...
 
class  FIXMsgFactory
 Creates FIXMessages. More...
 
class  FIXMsgHelper
 
class  FIXMsgProcessor
 Processes raw messages and provides message verification capabilities. More...
 
struct  FixSessionStatisticsLite
 Lightweight FIX Session statistics with small performance overhead. More...
 
struct  FixT11TcpBackupParameters
 The FIXT11_TCP underlying protocol backup properties. More...
 
struct  FixT11TcpParameters
 The FIXT11_TCP underlying protocol properties. More...
 
struct  FixTcpBackupParameters
 The FIX_TCP underlying protocol backup properties. More...
 
struct  FixTcpParameters
 The FIX_TCP underlying protocol properties. More...
 
class  GenericPreparedMessage
 Provides minimal functionality to work with prepared fields. More...
 
struct  HeaderFields
 Contains FIX message header fields. More...
 
class  HeartbeatWithTestReqIDEvent
 A Heartbeat message (MsgType = 0) with the TestReqID field (tag = 112) is received. More...
 
class  InMsgSeqNumTooLowEvent
 Incoming message sequence number is too low. More...
 
struct  InternalState
 Encapsulates the internal state. More...
 
class  LinkErrorWasDetected
 A telecommunication link error was detected. More...
 
class  LinkWasRestored
 A telecommunication link was restored. More...
 
class  ListenPort
 
class  LocalMktDate
 Encapsulates LocalMktDate FIX type. More...
 
class  LogonEvent
 The Logon message has been received from the counterparty. More...
 
class  LogoutEvent
 The session was closed. More...
 
class  MemBlock
 Represents reference to the memory block. More...
 
class  MessageStorageException
 Exceptions of this class is thrown by message storages to indicate the storage specific failure. More...
 
class  MessageStorageType
 Object representing FA's message storage. More...
 
class  MonthYear
 Encapsulates MonthYear FIX type. More...
 
struct  MsgFilter
 Message filter. More...
 
class  MsgRejectEvent
 Encapsulates rejected application message. More...
 
class  MsgStorage
 Basic message storage. More...
 
class  NewIncomingConnection
 New Incoming Connection. More...
 
class  NewIncomingConnectionError
 New Incoming Connection Error. More...
 
class  NewStateEvent
 The session has changed its state. More...
 
class  Notification
 Represents notification event. More...
 
class  ParseErrorInSession
 Parse error was detected. More...
 
struct  ParserDescription
 
class  ParseWarningInSession
 Parse error was detected. More...
 
class  PersistentDataWereFound
 This event is fired when the persistent information about session is found. More...
 
class  PreparedMessage
 Alternative for FIXMessage class. More...
 
class  PropertiesFile
 Loader for any file with properties like 'engine.properties'. More...
 
struct  PutMessageOptions
 Options to Session::put method. More...
 
class  RejectMsgStorage
 Abstract storage of the rejected messages. More...
 
class  ResendRequestEvent
 A Resend Request (MsgType = 2) has been received. More...
 
class  SequenceGapEvent
 The sequence gap was detected in incoming messages. More...
 
class  Session
 FIX Session. More...
 
struct  SessionBackupParameters
 Encapsulates connection's host and port. More...
 
struct  SessionContext
 Keeps information about administrative session context. More...
 
class  SessionDebugMessage
 Represents debug message related to Session. More...
 
class  SessionError
 Error related to Session. More...
 
class  SessionEvent
 A generic session-level event. More...
 
struct  SessionExtraParameters
 Session's extra parameters. More...
 
struct  SessionId
 Session Identificator structure. More...
 
class  SessionLevelRejectEvent
 A SessionReject message was received. More...
 
class  SessionLogonError
 Error related to Session Logon. More...
 
class  SessionLogonWarning
 Warning related to Session Logon. More...
 
class  SessionNotification
 Represents notification event related to Session. More...
 
class  SessionsManager
 An interface for managing sessions. More...
 
class  SessionWarning
 Represents warning event related to Session. More...
 
class  SessionWasClosed
 Session was closed. More...
 
class  SessionWasCreated
 Session was created. More...
 
class  SessionWasEstablished
 Session was established. More...
 
class  SessionWasRejected
 Session was rejected. More...
 
class  SessionWasRestored
 Session was restored from Persistent Message Storage. More...
 
class  SSLContextConfiguratorConverter
 
struct  SSLCustomContextProperties
 
struct  Statistics
 Statistical information about the current state of FIX Engine. More...
 
class  StatisticsProvider
 Provides detailed statistics about the current state of the FIX Engine. More...
 
class  StorableMsg
 Defines contract of the message to be stored in storage. More...
 
class  StorableMsgRemote
 Defines contract of the remote message to be stored in storage. More...
 
class  StorageMgr
 Manages MsgStorages. More...
 
struct  StrCaseInsComp
 Meyer's case-insensitive comparision functor. More...
 
class  StringEx
 String class. More...
 
class  SwitchConnectionEvent
 The session has changed its state. More...
 
class  TagValue
 Represents tag-value structure. More...
 
class  UnableToRouteMessageEvent
 The routing session wasn't found. More...
 
class  UnexpectedMessageEvent
 The unexpected message was received. More...
 
class  UTCDateOnly
 Encapsulates UTCDateOnly FIX type. More...
 
class  UTCTimeOnly
 Encapsulates UTCTimeOnly FIX type. More...
 
class  UTCTimestamp
 Encapsulates UTCTimestamp FIX type. More...
 
class  Warning
 Represents warning event. More...
 

Typedefs

typedef std::vector< std::string > Addresses
 Collection of ip addresess. More...
 
typedef BasicString< char > AsciiString
 AsciiString. More...
 
typedef MemBlock< unsigned char > ByteArray
 ByteArray. More...
 
typedef std::string DictionaryID
 Unique dictionary identifier. More...
 
typedef std::map< std::string, std::string > EngineProperties
 
typedef FastScp11::Decoder FastScp11Decoder
 
typedef std::vector< FixFieldFixFieldsList
 Typename for the fields list. More...
 
typedef std::map< FIXVersion, DictionaryIDFixVersionToProtocolName
 Assigns FIXVersion and id of the FIX dictionary. More...
 
typedef Decimal Float
 Represents float FIX type. More...
 
typedef System::i64 Integer
 Represents integer FIX type. More...
 
typedef System::IPAddr IPAddr
 
typedef std::vector< ListenPortListenPorts
 
typedef LocalMktDate LocalMktDateType
 Represents LocalMktDate FIX type. More...
 
typedef MonthYear MonthYearType
 Represents MonthYear FIX type. More...
 
typedef std::set< std::string > MsgTypes
 Set of FIX message types. More...
 
typedef std::vector< char > MultipleChar
 
typedef std::vector< std::string > MultipleString
 
typedef unsigned int ParserID
 Unique parser identifier. More...
 
typedef std::map< ParserID, ParserNameParserIDToParserName
 
typedef std::string ParserName
 Represents parser name. More...
 
typedef unsigned int PreparedFieldIndex
 Index of the field in the PreparedMessage. More...
 
typedef unsigned int ProtocolID
 Unique protocol identifier. More...
 
typedef Utils::ReferenceCounterSharedPtr< SSLContextConfiguratorConverterSSLContextConfiguratorConverterPtr
 
typedef std::map< const char *, const char *, StrCaseInsCompStringProperties
 Map of pairs (key, value) for properties. More...
 
typedef BasicString< char > StringRef
 AsciiString. More...
 
typedef UInteger TagNum
 Represents TagNum FIX type. More...
 
typedef Utils::Emptily< bool > TriBool
 
typedef Utils::Emptily< int > TriInt
 
typedef Utils::Emptily< Engine::MessageStorageTypeTriMessageStorageType
 
typedef Utils::Emptily< SessionExtraParametersTriSessionExtraParameters
 
typedef Utils::Emptily< StorageRecoveryStrategyEnumTriStorageRecoveryStrategy
 
typedef Utils::Emptily< System::u64 > TriUInt64
 
typedef System::u64 UInteger
 Represents unsigned integer FIX type. More...
 
typedef UTCDateOnly UTCDateOnlyType
 Represents UTCDateOnly FIX type. More...
 
typedef UTCTimeOnly UTCTimeOnlyType
 Represents UTCTimeOnly FIX type. More...
 
typedef UTCTimestamp UTCTimestampType
 Represents UTCTimestamp FIX type. More...
 
typedef ByteArray Utf8String
 Utf8String. More...
 
typedef BasicString< wchar_t > WideString
 WideString. More...
 
typedef BasicString< wchar_t > WStringRef
 WideString. More...
 

Enumerations

enum  CustomSessionType { GENERIC = 0, LME_SELECT = 1, CME_SECURE_LOGON = 2, TOTAL_SSN_TYPES }
 Encryption method. More...
 
enum  EncryptMethod {
  NONE = 0, PKCS = 1, DES = 2, PKCS_DES = 3,
  PGP_DES = 4, PGP_DES_MD5 = 5, PEM_DES_MD5 = 6, EncryptMethod_NA = 7,
  EncryptMethod_Last
}
 Encryption method. More...
 
enum  FIXVersion {
  NA = 0, FIX40 = 1, FIX41 = 2, FIX42 = 3,
  ESFIX = 4, FIX43 = 5, FIX44 = 6, FIX50 = 7,
  FIX50SP1 = 8, FIX50SP2 = 9, FIXT11 = 10, FIX50SP1CME = 11,
  FAST_FIX44 = 12, FIXVersion_Last
}
 FIX protocol version. More...
 
enum  ForceSeqNumResetMode { FSNR_NA, FSNR_ON, FSNR_ALWAYS, FSNR_OFF }
 Force SeqNum Reset mode. More...
 
enum  OutOfSequenceMessagesStrategyEnum {
  OSMS_DEFAULT = 0x00000000, OSMS_REQUEST_ALWAYS = 0x00000001, OSMS_REQUEST_ONCE = 0x00000002, OSMS_QUEUE = 0x00000003,
  OSMS_IGNORE_GAP = 0x00000004, OSMS_TOTAL = 0x00000005
}
 Strategy for out of sequence messages. More...
 
enum  PortRole { NA_PORT_ROLE = 0, COMMON_LISTEN_PORT = 1, ADMIN_LISTEN_PORT = 2, SECURED_LISTEN_PORT = 4 }
 Defines engine port roles. More...
 
enum  SessionRole { NA_SESSION_ROLE = 0, INITIATOR_SESSION_ROLE = 1, ACCEPTOR_SESSION_ROLE =2 }
 Defines role of session. More...
 
enum  SocketOpPriority {
  NA_SOCKET_OP_PRIORITY = 0, AGGRESSIVE_SEND_SOCKET_OP_PRIORITY = 1, AGGRESSIVE_RECEIVE_SOCKET_OP_PRIORITY = 2, AGGRESSIVE_SEND_AND_RECEIVE_SOCKET_OP_PRIORITY = 3,
  EVEN_SOCKET_OP_PRIORITY = 4, DIRECT_SEND_SOCKET_OP_PRIORITY = 8
}
 The priorities of the messages send receive operations. More...
 
enum  StorageRecoveryStrategyEnum {
  SRS_RECOVERY_NONE = 0x00000000, SRS_CREATE_NEW = 0x00000001, SRS_DEFAULT = SRS_RECOVERY_NONE, SRS_TOTAL = 0x00000002,
  SRS_FORCE_DWORD = 0xFFFFFFFF
}
 Enumeration of the recovery storage strategy. More...
 
enum  Transport { SOCKETS, MYRICOM_DBL, Transport_Last }
 Set of transports. More...
 
enum  UnderlyingProtocol { FIX_TCP, FIXT11_TCP, FIXT11_FAST_TCP }
 Set of the supported underlying protocols. More...
 

Functions

bool operator!= (AsciiString lv, AsciiString rv) throw ()
 Tests if the std::string on the left side of the operator is not equal to the std::string on the right side. More...
 
bool operator!= (WideString lv, WideString rv) throw ()
 Tests if the std::string on the left side of the operator is not equal to the std::string on the right side. More...
 
bool operator!= (ByteArray lv, ByteArray rv) throw ()
 Tests if the std::vector on the left side of the operator is not equal to the std::vector on the right side. More...
 
template<typename T >
bool operator!= (MemBlock< T > lv, MemBlock< T > rv) throw ()
 Tests if the object on the left side of the operator is not equal to the object on the right side. More...
 
template<typename TagValueT , typename T >
bool operator!= (FieldValueT< TagValueT > lv, T value)
 Compares FieldValue and object. More...
 
template<typename TagValueT , typename T >
bool operator!= (T value, FieldValueT< TagValueT > rv)
 Compares FieldValue and object. More...
 
template<typename TagValueTL , typename TagValueTR >
bool operator!= (FieldValueT< TagValueTL > lv, FieldValueT< TagValueTR > value)
 Compares two FieldValues. More...
 
V12_API bool operator< (MessageStorageType const &lhs, MessageStorageType const &rhs)
 
bool operator< (AsciiString lv, AsciiString rv) throw ()
 Tests if the std::string on the left side of the operator is less than the std::string on the right side. More...
 
bool operator< (WideString lv, WideString rv) throw ()
 Tests if the std::string on the left side of the operator is less than the std::string on the right side. More...
 
bool operator< (ByteArray lv, ByteArray rv) throw ()
 Tests if the std::vector on the left side of the operator is less than the std::vector on the right side. More...
 
template<typename T >
bool operator< (MemBlock< T > lv, MemBlock< T > rv) throw ()
 Tests if the iterator object on the left side of the operator is greater than the iterator object on the right side. More...
 
V12_API std::ostream & operator<< (std::ostream &s, const LocalMktDate &v)
 Writes a LocalMktDate into the output stream. More...
 
V12_API std::ostream & operator<< (std::ostream &s, const MonthYear &v)
 Writes a MonthYear into the output stream. More...
 
V12_API std::ostream & operator<< (std::ostream &s, const UTCDateOnly &v)
 Writes a UTCDateOnly into the output stream. More...
 
V12_API std::ostream & operator<< (std::ostream &s, const UTCTimeOnly &v)
 Writes a UTCTimeOnly into the output stream. More...
 
V12_API std::ostream & operator<< (std::ostream &s, const UTCTimestamp &v)
 Writes a UTCTimestamp into the output stream. More...
 
V12_API std::ostream & operator<< (std::ostream &s, const Decimal &rv)
 Stream writer. More...
 
V12_API StringExoperator<< (StringEx &s, const Decimal &rv)
 StringEx writer. More...
 
V12_API std::ostream & operator<< (std::ostream &ostm, const MessageStorageType &type)
 
V12_API std::ostream & operator<< (std::ostream &stream, AsciiString value)
 Writes AsciiString to the stream. More...
 
V12_API std::ostream & operator<< (std::ostream &stream, WideString value)
 Writes AsciiString to the stream. More...
 
V12_API std::ostream & operator<< (std::ostream &stream, ByteArray value)
 Writes ByteArray to the stream. More...
 
V12_API std::ostream & operator<< (std::ostream &stream, StringEx const &value)
 Writes ByteArray to the stream. More...
 
template<typename TagValueT >
std::ostream & operator<< (std::ostream &stream, FieldValueT< TagValueT > value)
 Writes FieldValue to the std::ostream. More...
 
V12_API bool operator<= (MessageStorageType const &lhs, MessageStorageType const &rhs)
 
bool operator== (AsciiString lv, AsciiString rv) throw ()
 Tests if the std::string on the left side of the operator is equal to the std::string on the right side. More...
 
bool operator== (WideString lv, WideString rv) throw ()
 Tests if the std::string on the left side of the operator is equal to the std::string on the right side. More...
 
bool operator== (ByteArray lv, ByteArray rv) throw ()
 Tests if the std::vector on the left side of the operator is equal to the std::vector on the right side. More...
 
template<typename T >
bool operator== (MemBlock< T > lv, MemBlock< T > rv) throw ()
 Tests if the object on the left side of the operator is equal to the object on the right side. More...
 
template<typename TagValueT , typename T >
bool operator== (FieldValueT< TagValueT > lv, T value)
 Compares FieldValue and object. More...
 
template<typename TagValueT , typename T >
bool operator== (T value, FieldValueT< TagValueT > rv)
 Compares FieldValue and object. More...
 
template<typename TagValueTL , typename TagValueTR >
bool operator== (FieldValueT< TagValueTL > lv, FieldValueT< TagValueTR > value)
 Compares two FieldValues. More...
 
V12_API bool operator> (MessageStorageType const &lhs, MessageStorageType const &rhs)
 
bool operator> (AsciiString lv, AsciiString rv) throw ()
 Tests if the iterator std::string on the left side of the operator is greater than the iterator std::string on the right side. More...
 
bool operator> (WideString lv, WideString rv) throw ()
 Tests if the iterator std::string on the left side of the operator is greater than the iterator std::string on the right side. More...
 
bool operator> (ByteArray lv, ByteArray rv) throw ()
 Tests if the iterator std::vector on the left side of the operator is greater than the iterator std::vector on the right side. More...
 
template<typename T >
bool operator> (MemBlock< T > lv, MemBlock< T > rv) throw ()
 Tests if the iterator object on the left side of the operator is greater than the iterator object on the right side. More...
 
V12_API bool operator>= (MessageStorageType const &lhs, MessageStorageType const &rhs)
 
void V12_API removeCustomFields (FIXMessage *msg)
 Removes custom fields (tag > 6000) from message. More...
 
V12_API void swap (MessageStorageType &lhs, MessageStorageType &rhs)
 swap() as a free function with ADL and non-throwing guarantee. More...
 

Variables

const MessageStorageType custom_storageType = MessageStorageType::custom()
 
const MessageStorageType default_storageType = MessageStorageType::default_()
 Configurable from engine.properties. More...
 
static ParserID const INVALID_PARSER_ID = 0
 Invalid ParserID. More...
 
static ProtocolID const INVALID_PROTOCOL_ID = INVALID_PARSER_ID
 Invalid ProtocolID. More...
 
const MessageStorageType invalid_storageType = MessageStorageType::invalid()
 Special instance representing incorrect storage type. More...
 
const MessageStorageType null_storageType = MessageStorageType::builtin(BuiltinMessageStorage::Null)
 Simple storage, that does not store anything - fast. More...
 
const MessageStorageType persistent_storageType = MessageStorageType::builtin(BuiltinMessageStorage::Persistent)
 File storage - slow and safe. More...
 
const MessageStorageType persistentMM_storageType = MessageStorageType::builtin(BuiltinMessageStorage::PersistentMM)
 Memory mapped file storage - fast and safe. More...
 
const std::string RESULT_CONDITIONS_LACK = "8"
 Conditions lack. More...
 
const std::string RESULT_ENGINE_EXCEPTION = "5"
 Engine std::exception. More...
 
const std::string RESULT_INCORRECT_VALUE = "4"
 Incorrect value. More...
 
const std::string RESULT_INVALIDARG = "9"
 Invalid argument. More...
 
const std::string RESULT_LOGIC_ERROR = "10"
 Logic error. More...
 
const std::string RESULT_NOT_ENOUGH_PARAMETERS = "2"
 Not enough parameters. More...
 
const std::string RESULT_NOT_IMPLEMENTED = "1"
 Not implemented. More...
 
const std::string RESULT_OPERATION_REJECTED = "7"
 Operation rejected. More...
 
const std::string RESULT_RUNTIME_ERROR = "11"
 Runtime error. More...
 
const std::string RESULT_SUCCESS = "0"
 Success. More...
 
const std::string RESULT_UNKNOWN_ERROR = "6"
 Unknown error. More...
 
const std::string RESULT_UNKNOWN_SESSION = "3"
 Unknown session. More...
 
const MessageStorageType splitPersistent_storageType = MessageStorageType::builtin(BuiltinMessageStorage::SplitPersistent)
 Sliced file storage - fast and safe. More...
 
static ParserID const TOTAL_PARSER_ID_COUNT = 100
 Last valid FIX parser identifier. More...
 
static ProtocolID const TOTAL_PROTOCOL_ID_COUNT = TOTAL_PARSER_ID_COUNT
 Last valid FIX protocol identifier. More...
 
const MessageStorageType total_storageType = MessageStorageType::total()
 Special instance representing total number of storages for iteration. More...
 
const MessageStorageType transient_storageType = MessageStorageType::builtin(BuiltinMessageStorage::Transient)
 Memory storage - fast but dangerous. More...
 

Detailed Description

FIX Engine namespace.

Contains all FIX related classes (FIXMessage, FIXGroup etc).

Contains all FIX related classes (Session, FIXMessage, FIXGroup etc).

Typedef Documentation

◆ Addresses

typedef std::vector<std::string> Engine::Addresses

Collection of ip addresess.

◆ AsciiString

AsciiString.

◆ ByteArray

typedef MemBlock<unsigned char> Engine::ByteArray

ByteArray.

◆ DictionaryID

typedef std::string Engine::DictionaryID

Unique dictionary identifier.

Deprecated:
Use ParserID instead.

◆ EngineProperties

typedef std::map<std::string, std::string> Engine::EngineProperties

◆ FastScp11Decoder

◆ FixFieldsList

typedef std::vector<FixField> Engine::FixFieldsList

Typename for the fields list.

◆ FixVersionToProtocolName

Assigns FIXVersion and id of the FIX dictionary.

◆ Float

Represents float FIX type.

◆ Integer

typedef System::i64 Engine::Integer

Represents integer FIX type.

◆ IPAddr

◆ ListenPorts

typedef std::vector<ListenPort> Engine::ListenPorts

◆ LocalMktDateType

Represents LocalMktDate FIX type.

◆ MonthYearType

Represents MonthYear FIX type.

◆ MsgTypes

typedef std::set<std::string> Engine::MsgTypes

Set of FIX message types.

◆ MultipleChar

typedef std::vector<char> Engine::MultipleChar

◆ MultipleString

typedef std::vector<std::string> Engine::MultipleString

◆ ParserID

typedef unsigned int Engine::ParserID

Unique parser identifier.

◆ ParserIDToParserName

◆ ParserName

typedef std::string Engine::ParserName

Represents parser name.

◆ PreparedFieldIndex

typedef unsigned int Engine::PreparedFieldIndex

Index of the field in the PreparedMessage.

◆ ProtocolID

typedef unsigned int Engine::ProtocolID

Unique protocol identifier.

Deprecated:
Use Engine::ParserID instead.

◆ SSLContextConfiguratorConverterPtr

◆ StringProperties

typedef std::map< const char*, const char*, StrCaseInsComp > Engine::StringProperties

Map of pairs (key, value) for properties.

◆ StringRef

AsciiString.

◆ TagNum

Represents TagNum FIX type.

◆ TriBool

◆ TriInt

◆ TriMessageStorageType

◆ TriSessionExtraParameters

◆ TriStorageRecoveryStrategy

◆ TriUInt64

typedef Utils::Emptily<System::u64> Engine::TriUInt64

◆ UInteger

typedef System::u64 Engine::UInteger

Represents unsigned integer FIX type.

◆ UTCDateOnlyType

Represents UTCDateOnly FIX type.

◆ UTCTimeOnlyType

Represents UTCTimeOnly FIX type.

◆ UTCTimestampType

Represents UTCTimestamp FIX type.

◆ Utf8String

Utf8String.

◆ WideString

typedef BasicString<wchar_t> Engine::WideString

WideString.

◆ WStringRef

typedef BasicString<wchar_t> Engine::WStringRef

WideString.

Enumeration Type Documentation

◆ CustomSessionType

Encryption method.

Enumerator
GENERIC 

generic session

LME_SELECT 

encrypt password tag each time

CME_SECURE_LOGON 
TOTAL_SSN_TYPES 

< CME Secure logon support

Represents number of sessions types

◆ EncryptMethod

Encryption method.

Enumerator
NONE 

None / other.

PKCS 

proprietary

DES 

EBC mode.

PKCS_DES 

proprietary

PGP_DES 

defunct

PGP_DES_MD5 

see app note on FIX home page

PEM_DES_MD5 

see app note on FIX home page

EncryptMethod_NA 

Non-initialized.

EncryptMethod_Last 

◆ FIXVersion

FIX protocol version.

Enumerator
NA 

Unknown version.

FIX40 

FIX 4.0.

FIX41 

FIX 4.1.

FIX42 

FIX 4.2.

ESFIX 

EasyScreen version of 4.2.

FIX43 

FIX 4.3.

FIX44 

FIX 4.4.

FIX50 

FIX 5.0.

FIX50SP1 

FIX 5.0 SP1.

FIX50SP2 

FIX 5.0 SP2.

FIXT11 

FIXT 1.1.

FIX50SP1CME 

FIX 5.0 SP1 CME.

FAST_FIX44 
FIXVersion_Last 

Represents number of FIX protocols.

◆ ForceSeqNumResetMode

Force SeqNum Reset mode.

Enumerator
FSNR_NA 

Default value; take the value from properties file.

FSNR_ON 

Use tag 141 at first Logon to reset sequence number.

FSNR_ALWAYS 

Reset sequence number at every Logon.

FSNR_OFF 

Do not use tag 141 at Logon to reset sequence number.

◆ OutOfSequenceMessagesStrategyEnum

Strategy for out of sequence messages.

Enumerator
OSMS_DEFAULT 

Default value; for engine parameter used OSMS_REQUEST_ALWAYS for session parameter used value of engine parameter.

OSMS_REQUEST_ALWAYS 

send resend request on any out of sequence message

OSMS_REQUEST_ONCE 

Send resend request on gap.

Suppress new resend request if gap not closed

OSMS_QUEUE 

Use out of sequence queue for storing out of sequence messages and processing them after closing gap.

OSMS_IGNORE_GAP 

Send out of sequence request on gap and processing out of sequence messages.

OSMS_TOTAL 

◆ PortRole

Defines engine port roles.

Enumerator
NA_PORT_ROLE 

Not initialized PortRole.

COMMON_LISTEN_PORT 

port accepts common FIX sessions

ADMIN_LISTEN_PORT 

port accepts admin FIX sessions

SECURED_LISTEN_PORT 

port uses SSL encryption

◆ SessionRole

Defines role of session.

Enumerator
NA_SESSION_ROLE 

NA.

INITIATOR_SESSION_ROLE 

Session is acceptor.

ACCEPTOR_SESSION_ROLE 

Session is initiator.

◆ SocketOpPriority

The priorities of the messages send receive operations.

Enumerator
NA_SOCKET_OP_PRIORITY 

Not initialized SocketOpPriority.

AGGRESSIVE_SEND_SOCKET_OP_PRIORITY 

Use dedicated thread to send messages.

AGGRESSIVE_RECEIVE_SOCKET_OP_PRIORITY 

Use dedicated thread to receive messages.

AGGRESSIVE_SEND_AND_RECEIVE_SOCKET_OP_PRIORITY 

Use dedicated thread to send and receive messages.

EVEN_SOCKET_OP_PRIORITY 

Use thread pool to send/receive messages.

DIRECT_SEND_SOCKET_OP_PRIORITY 

Try sending from the calling thread, use a thread pool if that would block.

◆ StorageRecoveryStrategyEnum

Enumeration of the recovery storage strategy.

Enumerator
SRS_RECOVERY_NONE 
SRS_CREATE_NEW 
SRS_DEFAULT 
SRS_TOTAL 
SRS_FORCE_DWORD 

◆ Transport

Set of transports.

Enumerator
SOCKETS 

Kernel sockets.

MYRICOM_DBL 

Myricom TA.

Transport_Last 

◆ UnderlyingProtocol

Set of the supported underlying protocols.

Enumerator
FIX_TCP 

simple TCP socket with same application and session protocols.

The FIXT.1.1 session protocol will be used for the FIX50 application protocol.

FIXT11_TCP 

simple TCP socket with FIXT.1.1 session protocol

FIXT11_FAST_TCP 

FIX over FIXT.1.1 over FAST.

Function Documentation

◆ operator!=() [1/7]

bool Engine::operator!= ( AsciiString  lv,
AsciiString  rv 
)
throw (
)
inline

Tests if the std::string on the left side of the operator is not equal to the std::string on the right side.

◆ operator!=() [2/7]

bool Engine::operator!= ( WideString  lv,
WideString  rv 
)
throw (
)
inline

Tests if the std::string on the left side of the operator is not equal to the std::string on the right side.

◆ operator!=() [3/7]

bool Engine::operator!= ( ByteArray  lv,
ByteArray  rv 
)
throw (
)
inline

Tests if the std::vector on the left side of the operator is not equal to the std::vector on the right side.

◆ operator!=() [4/7]

template<typename T >
bool Engine::operator!= ( MemBlock< T >  lv,
MemBlock< T >  rv 
)
throw (
)
inline

Tests if the object on the left side of the operator is not equal to the object on the right side.

◆ operator!=() [5/7]

template<typename TagValueT , typename T >
bool Engine::operator!= ( FieldValueT< TagValueT >  lv,
value 
)
inline

Compares FieldValue and object.

References Engine::FieldValueT< TagValueT >::equal().

◆ operator!=() [6/7]

template<typename TagValueT , typename T >
bool Engine::operator!= ( value,
FieldValueT< TagValueT >  rv 
)
inline

Compares FieldValue and object.

References Engine::FieldValueT< TagValueT >::equal().

◆ operator!=() [7/7]

template<typename TagValueTL , typename TagValueTR >
bool Engine::operator!= ( FieldValueT< TagValueTL >  lv,
FieldValueT< TagValueTR >  value 
)
inline

Compares two FieldValues.

References Engine::FieldValueT< TagValueT >::equal().

◆ operator<() [1/5]

V12_API bool Engine::operator< ( MessageStorageType const &  lhs,
MessageStorageType const &  rhs 
)

◆ operator<() [2/5]

bool Engine::operator< ( AsciiString  lv,
AsciiString  rv 
)
throw (
)
inline

Tests if the std::string on the left side of the operator is less than the std::string on the right side.

◆ operator<() [3/5]

bool Engine::operator< ( WideString  lv,
WideString  rv 
)
throw (
)
inline

Tests if the std::string on the left side of the operator is less than the std::string on the right side.

◆ operator<() [4/5]

bool Engine::operator< ( ByteArray  lv,
ByteArray  rv 
)
throw (
)
inline

Tests if the std::vector on the left side of the operator is less than the std::vector on the right side.

◆ operator<() [5/5]

template<typename T >
bool Engine::operator< ( MemBlock< T >  lv,
MemBlock< T >  rv 
)
throw (
)
inline

Tests if the iterator object on the left side of the operator is greater than the iterator object on the right side.

References Engine::MemBlock< T >::compareTo().

◆ operator<<() [1/13]

V12_API std::ostream& Engine::operator<< ( std::ostream &  s,
const LocalMktDate v 
)

Writes a LocalMktDate into the output stream.

◆ operator<<() [2/13]

V12_API std::ostream& Engine::operator<< ( std::ostream &  s,
const MonthYear v 
)

Writes a MonthYear into the output stream.

◆ operator<<() [3/13]

V12_API std::ostream& Engine::operator<< ( std::ostream &  s,
const UTCDateOnly v 
)

Writes a UTCDateOnly into the output stream.

◆ operator<<() [4/13]

V12_API std::ostream& Engine::operator<< ( std::ostream &  s,
const UTCTimeOnly v 
)

Writes a UTCTimeOnly into the output stream.

◆ operator<<() [5/13]

V12_API std::ostream& Engine::operator<< ( std::ostream &  s,
const UTCTimestamp v 
)

Writes a UTCTimestamp into the output stream.

◆ operator<<() [6/13]

V12_API std::ostream& Engine::operator<< ( std::ostream &  s,
const Decimal rv 
)

Stream writer.

◆ operator<<() [7/13]

V12_API StringEx& Engine::operator<< ( StringEx s,
const Decimal rv 
)

StringEx writer.

◆ operator<<() [8/13]

V12_API std::ostream& Engine::operator<< ( std::ostream &  ostm,
const MessageStorageType type 
)

◆ operator<<() [9/13]

V12_API std::ostream& Engine::operator<< ( std::ostream &  stream,
AsciiString  value 
)

Writes AsciiString to the stream.

◆ operator<<() [10/13]

V12_API std::ostream& Engine::operator<< ( std::ostream &  stream,
WideString  value 
)

Writes AsciiString to the stream.

◆ operator<<() [11/13]

V12_API std::ostream& Engine::operator<< ( std::ostream &  stream,
ByteArray  value 
)

Writes ByteArray to the stream.

◆ operator<<() [12/13]

V12_API std::ostream& Engine::operator<< ( std::ostream &  stream,
StringEx const &  value 
)

Writes ByteArray to the stream.

◆ operator<<() [13/13]

template<typename TagValueT >
std::ostream& Engine::operator<< ( std::ostream &  stream,
FieldValueT< TagValueT >  value 
)
inline

Writes FieldValue to the std::ostream.

◆ operator<=()

V12_API bool Engine::operator<= ( MessageStorageType const &  lhs,
MessageStorageType const &  rhs 
)

◆ operator==() [1/7]

bool Engine::operator== ( AsciiString  lv,
AsciiString  rv 
)
throw (
)
inline

Tests if the std::string on the left side of the operator is equal to the std::string on the right side.

◆ operator==() [2/7]

bool Engine::operator== ( WideString  lv,
WideString  rv 
)
throw (
)
inline

Tests if the std::string on the left side of the operator is equal to the std::string on the right side.

◆ operator==() [3/7]

bool Engine::operator== ( ByteArray  lv,
ByteArray  rv 
)
throw (
)
inline

Tests if the std::vector on the left side of the operator is equal to the std::vector on the right side.

◆ operator==() [4/7]

template<typename T >
bool Engine::operator== ( MemBlock< T >  lv,
MemBlock< T >  rv 
)
throw (
)
inline

Tests if the object on the left side of the operator is equal to the object on the right side.

◆ operator==() [5/7]

template<typename TagValueT , typename T >
bool Engine::operator== ( FieldValueT< TagValueT >  lv,
value 
)
inline

Compares FieldValue and object.

◆ operator==() [6/7]

template<typename TagValueT , typename T >
bool Engine::operator== ( value,
FieldValueT< TagValueT >  rv 
)
inline

Compares FieldValue and object.

References Engine::FieldValueT< TagValueT >::equal().

◆ operator==() [7/7]

template<typename TagValueTL , typename TagValueTR >
bool Engine::operator== ( FieldValueT< TagValueTL >  lv,
FieldValueT< TagValueTR >  value 
)
inline

Compares two FieldValues.

References Engine::FieldValueT< TagValueT >::equal().

◆ operator>() [1/5]

V12_API bool Engine::operator> ( MessageStorageType const &  lhs,
MessageStorageType const &  rhs 
)

◆ operator>() [2/5]

bool Engine::operator> ( AsciiString  lv,
AsciiString  rv 
)
throw (
)
inline

Tests if the iterator std::string on the left side of the operator is greater than the iterator std::string on the right side.

◆ operator>() [3/5]

bool Engine::operator> ( WideString  lv,
WideString  rv 
)
throw (
)
inline

Tests if the iterator std::string on the left side of the operator is greater than the iterator std::string on the right side.

◆ operator>() [4/5]

bool Engine::operator> ( ByteArray  lv,
ByteArray  rv 
)
throw (
)
inline

Tests if the iterator std::vector on the left side of the operator is greater than the iterator std::vector on the right side.

◆ operator>() [5/5]

template<typename T >
bool Engine::operator> ( MemBlock< T >  lv,
MemBlock< T >  rv 
)
throw (
)
inline

Tests if the iterator object on the left side of the operator is greater than the iterator object on the right side.

◆ operator>=()

V12_API bool Engine::operator>= ( MessageStorageType const &  lhs,
MessageStorageType const &  rhs 
)

◆ removeCustomFields()

void V12_API Engine::removeCustomFields ( FIXMessage msg)

Removes custom fields (tag > 6000) from message.

Parameters
msgInstance of FIXMessage

◆ swap()

V12_API void Engine::swap ( MessageStorageType lhs,
MessageStorageType rhs 
)

swap() as a free function with ADL and non-throwing guarantee.

Variable Documentation

◆ custom_storageType

const MessageStorageType Engine::custom_storageType = MessageStorageType::custom()
Warning
This instance is provided for backward compatibility and is deprecated.

◆ default_storageType

const MessageStorageType Engine::default_storageType = MessageStorageType::default_()

Configurable from engine.properties.

◆ INVALID_PARSER_ID

ParserID const Engine::INVALID_PARSER_ID = 0
static

Invalid ParserID.

◆ INVALID_PROTOCOL_ID

ProtocolID const Engine::INVALID_PROTOCOL_ID = INVALID_PARSER_ID
static

Invalid ProtocolID.

Deprecated:
Use INVALID_PARSER_ID instead.

◆ invalid_storageType

const MessageStorageType Engine::invalid_storageType = MessageStorageType::invalid()

Special instance representing incorrect storage type.

◆ null_storageType

Simple storage, that does not store anything - fast.

◆ persistent_storageType

File storage - slow and safe.

◆ persistentMM_storageType

Memory mapped file storage - fast and safe.

◆ RESULT_CONDITIONS_LACK

const std::string Engine::RESULT_CONDITIONS_LACK = "8"

Conditions lack.

◆ RESULT_ENGINE_EXCEPTION

const std::string Engine::RESULT_ENGINE_EXCEPTION = "5"

Engine std::exception.

◆ RESULT_INCORRECT_VALUE

const std::string Engine::RESULT_INCORRECT_VALUE = "4"

Incorrect value.

◆ RESULT_INVALIDARG

const std::string Engine::RESULT_INVALIDARG = "9"

Invalid argument.

◆ RESULT_LOGIC_ERROR

const std::string Engine::RESULT_LOGIC_ERROR = "10"

Logic error.

◆ RESULT_NOT_ENOUGH_PARAMETERS

const std::string Engine::RESULT_NOT_ENOUGH_PARAMETERS = "2"

Not enough parameters.

◆ RESULT_NOT_IMPLEMENTED

const std::string Engine::RESULT_NOT_IMPLEMENTED = "1"

Not implemented.

◆ RESULT_OPERATION_REJECTED

const std::string Engine::RESULT_OPERATION_REJECTED = "7"

Operation rejected.

◆ RESULT_RUNTIME_ERROR

const std::string Engine::RESULT_RUNTIME_ERROR = "11"

Runtime error.

◆ RESULT_SUCCESS

const std::string Engine::RESULT_SUCCESS = "0"

Success.

◆ RESULT_UNKNOWN_ERROR

const std::string Engine::RESULT_UNKNOWN_ERROR = "6"

Unknown error.

◆ RESULT_UNKNOWN_SESSION

const std::string Engine::RESULT_UNKNOWN_SESSION = "3"

Unknown session.

◆ splitPersistent_storageType

Sliced file storage - fast and safe.

SplitStorage stores messages to the file of fixed size. If size of the file has reached the limit, storage closes file and creates new one. It allows to allocate storage on the RAM drive and move chunks of the storage to HDD in parallel. RAM drive should be connected to power supply to avoid data loss.

◆ TOTAL_PARSER_ID_COUNT

ParserID const Engine::TOTAL_PARSER_ID_COUNT = 100
static

Last valid FIX parser identifier.

◆ TOTAL_PROTOCOL_ID_COUNT

ProtocolID const Engine::TOTAL_PROTOCOL_ID_COUNT = TOTAL_PARSER_ID_COUNT
static

Last valid FIX protocol identifier.

Deprecated:
Use TOTAL_PARSER_ID_COUNT instead

◆ total_storageType

const MessageStorageType Engine::total_storageType = MessageStorageType::total()

Special instance representing total number of storages for iteration.

Warning
This instance provided for backward compatibility and is deprecated. Iterate over StorageMgr registered instances instead.

◆ transient_storageType

Memory storage - fast but dangerous.