OnixS C++ ICE Binary Order Entry Handler 1.1.1
API Documentation
Loading...
Searching...
No Matches
NewOrderCrossReport Struct Reference

Public Types

enum  
typedef SchemaTraits Schema
typedef NewOrderCrossReport ThisType
Public Types inherited from SbeMessage
typedef MessageSize EncodedLength
typedef MessageSize BlockLength

Public Member Functions

 NewOrderCrossReport ()=default
 NewOrderCrossReport (void *data, EncodedLength length, SchemaVersion version=Schema::Version)
 NewOrderCrossReport (void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
 NewOrderCrossReport (void *data, EncodedLength length, NoInit)
 NewOrderCrossReport (SbeMessage message)
 NewOrderCrossReport (void *data, EncodedLength length, NoInit, NoCheck) noexcept
auto originatorUserId () const noexcept
ThisTypeoriginatorUserId (StrRef value) noexcept
auto symbol () const noexcept
ThisTypesymbol (Int32 value) noexcept
auto crossId () const noexcept
ThisTypecrossId (Int64 value) noexcept
auto transactTime () const noexcept(ticksToTimestamp::Nothrow)
ThisTypetransactTime (Timestamp value) noexcept(timestampToTicks::Nothrow)
auto rfcStatus () const noexcept
ThisTyperfcStatus (RFCStatusEnum value) noexcept
auto exchangeCode () const noexcept
ThisTypeexchangeCode (Int32NULL value) noexcept
ThisTypeexchangeCode (NullOpt) noexcept
auto text () const noexcept
ThisTypetext (StrRef value) noexcept
ThisTypetext (NullOpt) noexcept
ThisTyperesetVariableFields () noexcept
ThisTypereset () noexcept
std::string toString () const
const void * tail () const noexcept
EncodedLength calculateBinarySize () const noexcept
Public Member Functions inherited from SbeMessage
 SbeMessage () noexcept
 SbeMessage (void *data, MessageSize size, SchemaVersion version)
 SbeMessage (void *data, MessageSize size)
 SbeMessage (void *data, MessageSize size, NoCheck) noexcept
void clear () noexcept
bool valid () const noexcept
 operator bool () const noexcept
MessageTemplateId templateId () const noexcept
SchemaVersion version () const noexcept
SchemaId schemaId () const noexcept
SequenceId sequenceId () const noexcept
SbeMessagesequenceId (SequenceId value) noexcept
Timestamp sendTime () const noexcept
SbeMessagesendTime (Timestamp value) noexcept
HeaderFlags headerFlags () const noexcept
SbeMessageheaderFlags (HeaderFlags value) noexcept
const void * binary () const noexcept
void * binary () noexcept
const void * blockEnd () noexcept
const void * blockEnd () const noexcept
MessageSize bufferSize () const noexcept
void * body () noexcept
BlockLength blockLength () const noexcept
const void * block () const noexcept
void * block () noexcept
Public Member Functions inherited from SbeFields< Messaging::SbeMessage, MessageSize >
ONIXS_ICEBOE_FORCEINLINE Messaging::SbeMessagecontainer () noexcept
void zeroPaddingBytes (MessageSize offset) noexcept
ONIXS_ICEBOE_FORCEINLINE void setOrdinary (MessageSize offset, FieldValue value) noexcept
ONIXS_ICEBOE_FORCEINLINE void setEnumeration (MessageSize offset, Enumeration value) noexcept
ONIXS_ICEBOE_FORCEINLINE void setFixedStr (MessageSize offset, StrRef value) noexcept

Static Public Member Functions

static constexpr BlockLength minimalBlockLength (SchemaVersion version) noexcept
static constexpr BlockLength blockLength (SchemaVersion version) noexcept
static constexpr MessageSize getMinimalVariableFieldsSize (SchemaVersion version)
static constexpr UInt64 getMaxMessageSize (UInt8) noexcept
static constexpr StrRef className () noexcept
static constexpr StrRef fixType () noexcept

Additional Inherited Members

Protected Types inherited from SbeMessage
typedef SbeGroupList< MessageSizeGroupList
typedef SbeVariableLengthFieldList< MessageSizeVariableLengthFieldList
Protected Member Functions inherited from SbeMessage
SbeMessageversion (SchemaVersion version) noexcept
GroupList groups () noexcept
GroupList groups () const noexcept
template<typename Group>
void initGroup (Group &group, typename Group::EntrySize entrySize) noexcept
template<typename Group>
void setupGroup (Group &group, typename Group::Size entryCount, const void *messageTail)
template<typename Group>
void constructGroup (Group &group, typename Group::Size entryCount, const void *messageTail)
template<typename DATA>
void setVarDataField (DATA &data, StrRef value, const void *oldMessageTail)
VariableLengthFieldList variableLengthFields () noexcept
VariableLengthFieldList variableLengthFields () const noexcept
void init (MessageHeader::TemplateId value, MessageHeader::BlockLength minimalBlockLength, MessageHeader::BlockLength blockLength, SchemaId id) noexcept
MessageSize calculateBinarySize (const void *tail) const noexcept
template<class Callable, class Owner>
void setVariableLengthField (Callable callable, StrRef value, Owner &owner)
template<class Callable, class Owner>
void setVariableLengthField (Callable callable, StrRef value, SchemaVersion since, Owner &owner)
template<class Callable, class Owner>
StrRef getVariableLengthField (Callable callable, const Owner &owner) const noexcept
template<class Callable, class Owner>
StrRef getVariableLengthField (Callable callable, SchemaVersion since, Owner &owner) const noexcept
template<class Callable, class Owner>
void setVariableLengthFieldToNull (Callable callable, Owner &owner) noexcept
template<class Group, class Callable, class Owner>
void resetGroup (Callable callable, Owner &owner) noexcept
template<class Callable, class Owner>
void setVariableLengthFieldToNull (Callable callable, SchemaVersion since, Owner &owner) noexcept
template<class Group, class Callable, class Owner>
void resetGroup (Callable callable, SchemaVersion since, Owner &owner)
template<class Group, class Callable, class Owner>
ONIXS_ICEBOE_FORCEINLINE Group getGroup (Callable callable, Owner &owner) const noexcept
template<class Group, class Callable, class Owner>
ONIXS_ICEBOE_FORCEINLINE Group getGroup (Callable callable, SchemaVersion since, Owner &owner) const noexcept
template<class Group, class Callable, class Owner>
ONIXS_ICEBOE_FORCEINLINE Group constructGroup (Callable callable, typename Group::Size length, SchemaVersion since, Owner &owner)
template<class Group, class Callable, class Owner>
ONIXS_ICEBOE_FORCEINLINE Group constructGroup (Callable callable, typename Group::Size length, Owner &owner)
template<class Group, class Callable, class Owner>
Group setupGroup (Callable callable, typename Group::Size length, SchemaVersion since, Owner &owner)
template<class Group, class Callable, class Owner>
Group setupGroup (Callable callable, typename Group::Size length, Owner &owner)
Protected Member Functions inherited from SbeFields< Messaging::SbeMessage, MessageSize >
 SbeFields ()=default
 ~SbeFields ()=default
Protected Member Functions inherited from BinaryBlock< Messaging::SbeMessage, MessageSize >
 BinaryBlock ()=default
 ~BinaryBlock ()=default
ONIXS_ICEBOE_FORCEINLINE Value ordinary (MessageSize offset) const noexcept
ONIXS_ICEBOE_FORCEINLINE Enumeration enumeration (MessageSize offset) const noexcept
ONIXS_ICEBOE_FORCEINLINE StrRef fixedStr (MessageSize offset) const noexcept
ONIXS_ICEBOE_FORCEINLINE Value decimal (MessageSize offset) const noexcept
ONIXS_ICEBOE_FORCEINLINE std::enable_if<!isComposite< typenameNullValue::Value >::value, SbeOptionalConverted< decltype(std::declval< Callable >()(std::declval< typenameArgType< Callable >::type >()))> >::type convertible (MessageSize offset, OptionalTag) const noexcept(noexcept(Callable::Nothrow))
Protected Member Functions inherited from BinaryBlockBase
 ~BinaryBlockBase ()=default
Static Protected Member Functions inherited from SbeMessage
static constexpr MessageSize getMaxMessageSize () noexcept

Detailed Description

Definition at line 21827 of file Messages.h.

Member Typedef Documentation

◆ Schema

Used template schema.

Definition at line 21832 of file Messages.h.

◆ ThisType

This type alias.

Definition at line 21835 of file Messages.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum

Message template ID from SBE schema.

Enumerator
TemplateId 108 

Definition at line 21838 of file Messages.h.

21838{ TemplateId = 108 };

Constructor & Destructor Documentation

◆ NewOrderCrossReport() [1/6]

NewOrderCrossReport ( )
default

Initializes a blank instance.

◆ NewOrderCrossReport() [2/6]

NewOrderCrossReport ( void * data,
EncodedLength length,
SchemaVersion version = Schema::Version )
inline

Initializes an instance over the given memory block.

Definition at line 21844 of file Messages.h.

21845 : SbeMessage(data, length, version)
21846 {
21847 checkVersion<Schema>(version);
21848 checkLength(length, version);
21849 init(TemplateId, minimalBlockLength(version), blockLength(version), Schema::Id);
21850 reset();
21851 }

◆ NewOrderCrossReport() [3/6]

NewOrderCrossReport ( void * data,
EncodedLength length,
NoFieldsInit ,
SchemaVersion version = Schema::Version )
inline

Initializes an instance over the given memory block With no variable-length fields initialization It is assumed that the user does such an initialization manually.

Definition at line 21856 of file Messages.h.

21857 : SbeMessage(data, length, version)
21858 {
21859 checkVersion<Schema>(version);
21860 checkLength(length, version);
21861 init(TemplateId, minimalBlockLength(version), blockLength(version), Schema::Id);
21862 resetVariableFields();
21863 }

◆ NewOrderCrossReport() [4/6]

NewOrderCrossReport ( void * data,
EncodedLength length,
NoInit  )
inline

Creates an instance over the given memory block.

Definition at line 21866 of file Messages.h.

21867 : SbeMessage(data, length)
21868 {
21869 checkCompatibility();
21870 }

◆ NewOrderCrossReport() [5/6]

NewOrderCrossReport ( SbeMessage message)
inlineexplicit

Creates an instance over the given SBE message.

Definition at line 21874 of file Messages.h.

21875 : SbeMessage(message)
21876 {
21877 assert(message.valid());
21878
21879 checkCompatibility();
21880 }

◆ NewOrderCrossReport() [6/6]

NewOrderCrossReport ( void * data,
EncodedLength length,
NoInit ,
NoCheck  )
inlinenoexcept

Creates an instance over the given memory block.

Performs no checks.

Definition at line 21884 of file Messages.h.

21885 : SbeMessage(data, length, NoCheck())
21886 {
21887 assert(schemaId() == Schema::Id);
21888 assert(version() >= Schema::MinimalVersion);
21889 assert(TemplateId == templateId());
21890 }
const char * version() noexcept

Member Function Documentation

◆ blockLength()

constexpr BlockLength blockLength ( SchemaVersion version)
inlinestaticconstexprnoexcept

Size of message body in bytes.

Definition at line 22049 of file Messages.h.

22050 {
22051 return
22052 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
22053 minimalBlockLength(version);
22054 }

◆ calculateBinarySize()

EncodedLength calculateBinarySize ( ) const
inlinenoexcept
Returns
the size occupied by the message.

Definition at line 22126 of file Messages.h.

22127 {
22128 return
22129 SbeMessage::calculateBinarySize(tail());
22130 }

◆ className()

constexpr StrRef className ( )
inlinestaticconstexprnoexcept
Returns
class name.

Definition at line 22095 of file Messages.h.

22096 {
22097 return constructStrRef("NewOrderCrossReport");
22098 }
constexpr StrRef constructStrRef(const char(&value)[Size]) noexcept
Definition StrRef.h:414

◆ crossId() [1/2]

auto crossId ( ) const
inlinenoexcept

Provides access to crossID field.

Definition at line 21932 of file Messages.h.

21933 {
21934 constexpr BlockLength offset = 24;
21935
21936 return ordinary<Int64>(offset);
21937 }

◆ crossId() [2/2]

ThisType & crossId ( Int64 value)
inlinenoexcept

Provides access to crossID field.

Definition at line 21940 of file Messages.h.

21941 {
21942 constexpr BlockLength offset = 24;
21943
21944 setOrdinary(offset, value);
21945 return *this;
21946 }

◆ exchangeCode() [1/3]

auto exchangeCode ( ) const
inlinenoexcept

int32NULL.

Definition at line 21985 of file Messages.h.

21986 {
21987 constexpr BlockLength offset = 41;
21988
21989 return ordinary<NullInt32NULL>(offset, optional);
21990 }

◆ exchangeCode() [2/3]

ThisType & exchangeCode ( Int32NULL value)
inlinenoexcept

int32NULL.

Definition at line 21993 of file Messages.h.

21994 {
21995 constexpr BlockLength offset = 41;
21996
21997 setOrdinary(offset, value);
21998 return *this;
21999 }

◆ exchangeCode() [3/3]

ThisType & exchangeCode ( NullOpt )
inlinenoexcept

Definition at line 22001 of file Messages.h.

22002 {
22003 constexpr BlockLength offset = 41;
22004
22005 setOrdinary(offset, NullInt32NULL());
22006 return *this;
22007 }
IntegralConstant< Int32, -2147483647-1 > NullInt32NULL
Null value for an optional Int32NULL field.
Definition Fields.h:994

◆ fixType()

constexpr StrRef fixType ( )
inlinestaticconstexprnoexcept

FIX message type.

Definition at line 22103 of file Messages.h.

22104 {
22105 return constructStrRef("NewOrderCrossReport");
22106 }

◆ getMaxMessageSize()

constexpr UInt64 getMaxMessageSize ( UInt8 )
inlinestaticconstexprnoexcept

Maximal message size.

Definition at line 22069 of file Messages.h.

22070 {
22071 return
22072 static_cast<UInt64>(MessageHeaderBuilder::Size) +
22073 blockLength(Schema::Version);
22074 }

◆ getMinimalVariableFieldsSize()

constexpr MessageSize getMinimalVariableFieldsSize ( SchemaVersion version)
inlinestaticconstexpr

Minimal variable fields size (when variable-length fields are empty).

Definition at line 22059 of file Messages.h.

22060 {
22061 return
22062 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
22063 0;
22064 }

◆ minimalBlockLength()

constexpr BlockLength minimalBlockLength ( SchemaVersion version)
inlinestaticconstexprnoexcept

Minimal size of message body in bytes.

Definition at line 22040 of file Messages.h.

22041 {
22042 return
22043 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
22044 145;
22045 }

◆ originatorUserId() [1/2]

auto originatorUserId ( ) const
inlinenoexcept

Provides access to originatorUserID field.

Definition at line 21894 of file Messages.h.

21895 {
21896 constexpr BlockLength offset = 0;
21897 constexpr BlockLength length = 20;
21898
21899 return fixedStr<length>(offset);
21900 }

◆ originatorUserId() [2/2]

ThisType & originatorUserId ( StrRef value)
inlinenoexcept

Provides access to originatorUserID field.

Definition at line 21903 of file Messages.h.

21904 {
21905 constexpr BlockLength offset = 0;
21906 constexpr BlockLength length = 20;
21907
21908 setFixedStr<length>(offset, value);
21909 return *this;
21910 }

◆ reset()

ThisType & reset ( )
inlinenoexcept

Reset all variable-length and optional fields if any.

Definition at line 22083 of file Messages.h.

22084 {
22085 exchangeCode(nullOpt);
22086 text(nullOpt);
22087
22088 resetVariableFields();
22089 return *this;
22090 }

◆ resetVariableFields()

ThisType & resetVariableFields ( )
inlinenoexcept

Reset all variable-length fields if any.

Definition at line 22077 of file Messages.h.

22078 {
22079 return *this;
22080 }

◆ rfcStatus() [1/2]

auto rfcStatus ( ) const
inlinenoexcept

Provides access to rfcStatus field.

Definition at line 21967 of file Messages.h.

21968 {
21969 constexpr BlockLength offset = 40;
21970
21971 return enumeration<RFCStatusEnum>(offset);
21972 }

◆ rfcStatus() [2/2]

ThisType & rfcStatus ( RFCStatusEnum value)
inlinenoexcept

Provides access to rfcStatus field.

Definition at line 21975 of file Messages.h.

21976 {
21977 constexpr BlockLength offset = 40;
21978
21979 setEnumeration<RFCStatusEnum>(offset, value);
21980 return *this;
21981 }

◆ symbol() [1/2]

auto symbol ( ) const
inlinenoexcept

Provides access to symbol field.

Definition at line 21914 of file Messages.h.

21915 {
21916 constexpr BlockLength offset = 20;
21917
21918 return ordinary<Int32>(offset);
21919 }

◆ symbol() [2/2]

ThisType & symbol ( Int32 value)
inlinenoexcept

Provides access to symbol field.

Definition at line 21922 of file Messages.h.

21923 {
21924 constexpr BlockLength offset = 20;
21925
21926 setOrdinary(offset, value);
21927 return *this;
21928 }

◆ tail()

const void * tail ( ) const
inlinenoexcept
Returns
the end of the message.

Definition at line 22114 of file Messages.h.

22115 {
22116 return
22119 binary(),
22120 static_cast<ptrdiff_t>(SbeMessage::blockLength()) +
22121 MessageHeader::Size));
22122 }
ONIXS_ICEBOE_FORCEINLINE void * toOpaquePtr(Type *ptr) noexcept
Makes the pointer an opaque one.
Definition Memory.h:51
ONIXS_ICEBOE_FORCEINLINE Type * advanceByBytes(Type *pointer, ptrdiff_t distance) noexcept
Advances the pointer to a given offset (distance) in bytes.
Definition Memory.h:110

◆ text() [1/3]

auto text ( ) const
inlinenoexcept

Provides access to text field.

Definition at line 22011 of file Messages.h.

22012 {
22013 constexpr BlockLength offset = 45;
22014 constexpr BlockLength length = 100;
22015
22016 return fixedStr<length>(offset, optional);
22017 }

◆ text() [2/3]

ThisType & text ( NullOpt )
inlinenoexcept

Definition at line 22029 of file Messages.h.

22030 {
22031 constexpr BlockLength offset = 45;
22032 constexpr BlockLength length = 100;
22033
22034 setFixedStr<length>(offset, StrRef());
22035 return *this;
22036 }
std::basic_string_view< Char > StrRef
Definition StrRef.h:46

◆ text() [3/3]

ThisType & text ( StrRef value)
inlinenoexcept

Provides access to text field.

Definition at line 22020 of file Messages.h.

22021 {
22022 constexpr BlockLength offset = 45;
22023 constexpr BlockLength length = 100;
22024
22025 setFixedStr<length>(offset, value);
22026 return *this;
22027 }

◆ toString()

std::string toString ( ) const
inline
Returns
a human-readable presentation.

Definition at line 1784 of file MessageSerialization.h.

1785{
1786 return toStr(*this);
1787}
std::string toStr(Order::PriceOptional value)
Definition Order.cpp:34

◆ transactTime() [1/2]

auto transactTime ( ) const
inlinenoexcept

Nanoseconds since Unix epoch (January 1st, 1970).

Definition at line 21950 of file Messages.h.

21951 {
21952 constexpr BlockLength offset = 32;
21953 return convertible<ticksToTimestamp>(offset);
21954 }

◆ transactTime() [2/2]

ThisType & transactTime ( Timestamp value)
inlinenoexcept

Nanoseconds since Unix epoch (January 1st, 1970).

Definition at line 21957 of file Messages.h.

21958 {
21959 constexpr BlockLength offset = 32;
21960
21961 setOrdinary(offset, convert<timestampToTicks>(value));
21962 return *this;
21963 }