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

Public Types

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

Public Member Functions

 LogoutReport ()=default
 LogoutReport (void *data, EncodedLength length, SchemaVersion version=Schema::Version)
 LogoutReport (void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
 LogoutReport (void *data, EncodedLength length, NoInit)
 LogoutReport (SbeMessage message)
 LogoutReport (void *data, EncodedLength length, NoInit, NoCheck) noexcept
auto userId () const noexcept
ThisTypeuserId (StrRef 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 900 of file Messages.h.

Member Typedef Documentation

◆ Schema

Used template schema.

Definition at line 905 of file Messages.h.

◆ ThisType

This type alias.

Definition at line 908 of file Messages.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum

Message template ID from SBE schema.

Enumerator
TemplateId 113 

Definition at line 911 of file Messages.h.

911{ TemplateId = 113 };

Constructor & Destructor Documentation

◆ LogoutReport() [1/6]

LogoutReport ( )
default

Initializes a blank instance.

◆ LogoutReport() [2/6]

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

Initializes an instance over the given memory block.

Definition at line 917 of file Messages.h.

918 : SbeMessage(data, length, version)
919 {
920 checkVersion<Schema>(version);
921 checkLength(length, version);
922 init(TemplateId, minimalBlockLength(version), blockLength(version), Schema::Id);
923 reset();
924 }

◆ LogoutReport() [3/6]

LogoutReport ( 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 929 of file Messages.h.

930 : SbeMessage(data, length, version)
931 {
932 checkVersion<Schema>(version);
933 checkLength(length, version);
934 init(TemplateId, minimalBlockLength(version), blockLength(version), Schema::Id);
935 resetVariableFields();
936 }

◆ LogoutReport() [4/6]

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

Creates an instance over the given memory block.

Definition at line 939 of file Messages.h.

940 : SbeMessage(data, length)
941 {
942 checkCompatibility();
943 }

◆ LogoutReport() [5/6]

LogoutReport ( SbeMessage message)
inlineexplicit

Creates an instance over the given SBE message.

Definition at line 947 of file Messages.h.

948 : SbeMessage(message)
949 {
950 assert(message.valid());
951
952 checkCompatibility();
953 }

◆ LogoutReport() [6/6]

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

Creates an instance over the given memory block.

Performs no checks.

Definition at line 957 of file Messages.h.

958 : SbeMessage(data, length, NoCheck())
959 {
960 assert(schemaId() == Schema::Id);
961 assert(version() >= Schema::MinimalVersion);
962 assert(TemplateId == templateId());
963 }
const char * version() noexcept

Member Function Documentation

◆ blockLength()

constexpr BlockLength blockLength ( SchemaVersion version)
inlinestaticconstexprnoexcept

Size of message body in bytes.

Definition at line 1051 of file Messages.h.

1052 {
1053 return
1054 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
1055 minimalBlockLength(version);
1056 }

◆ calculateBinarySize()

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

Definition at line 1128 of file Messages.h.

1129 {
1130 return
1131 SbeMessage::calculateBinarySize(tail());
1132 }

◆ className()

constexpr StrRef className ( )
inlinestaticconstexprnoexcept
Returns
class name.

Definition at line 1097 of file Messages.h.

1098 {
1099 return constructStrRef("LogoutReport");
1100 }
constexpr StrRef constructStrRef(const char(&value)[Size]) noexcept
Definition StrRef.h:414

◆ exchangeCode() [1/3]

auto exchangeCode ( ) const
inlinenoexcept

int32NULL.

Definition at line 987 of file Messages.h.

988 {
989 constexpr BlockLength offset = 20;
990
991 return ordinary<NullInt32NULL>(offset, optional);
992 }

◆ exchangeCode() [2/3]

ThisType & exchangeCode ( Int32NULL value)
inlinenoexcept

int32NULL.

Definition at line 995 of file Messages.h.

996 {
997 constexpr BlockLength offset = 20;
998
999 setOrdinary(offset, value);
1000 return *this;
1001 }

◆ exchangeCode() [3/3]

ThisType & exchangeCode ( NullOpt )
inlinenoexcept

Definition at line 1003 of file Messages.h.

1004 {
1005 constexpr BlockLength offset = 20;
1006
1007 setOrdinary(offset, NullInt32NULL());
1008 return *this;
1009 }
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 1105 of file Messages.h.

1106 {
1107 return constructStrRef("5");
1108 }

◆ getMaxMessageSize()

constexpr UInt64 getMaxMessageSize ( UInt8 )
inlinestaticconstexprnoexcept

Maximal message size.

Definition at line 1071 of file Messages.h.

1072 {
1073 return
1074 static_cast<UInt64>(MessageHeaderBuilder::Size) +
1075 blockLength(Schema::Version);
1076 }

◆ getMinimalVariableFieldsSize()

constexpr MessageSize getMinimalVariableFieldsSize ( SchemaVersion version)
inlinestaticconstexpr

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

Definition at line 1061 of file Messages.h.

1062 {
1063 return
1064 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
1065 0;
1066 }

◆ minimalBlockLength()

constexpr BlockLength minimalBlockLength ( SchemaVersion version)
inlinestaticconstexprnoexcept

Minimal size of message body in bytes.

Definition at line 1042 of file Messages.h.

1043 {
1044 return
1045 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
1046 124;
1047 }

◆ reset()

ThisType & reset ( )
inlinenoexcept

Reset all variable-length and optional fields if any.

Definition at line 1085 of file Messages.h.

1086 {
1087 exchangeCode(nullOpt);
1088 text(nullOpt);
1089
1090 resetVariableFields();
1091 return *this;
1092 }

◆ resetVariableFields()

ThisType & resetVariableFields ( )
inlinenoexcept

Reset all variable-length fields if any.

Definition at line 1079 of file Messages.h.

1080 {
1081 return *this;
1082 }

◆ tail()

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

Definition at line 1116 of file Messages.h.

1117 {
1118 return
1121 binary(),
1122 static_cast<ptrdiff_t>(SbeMessage::blockLength()) +
1123 MessageHeader::Size));
1124 }
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 1013 of file Messages.h.

1014 {
1015 constexpr BlockLength offset = 24;
1016 constexpr BlockLength length = 100;
1017
1018 return fixedStr<length>(offset, optional);
1019 }

◆ text() [2/3]

ThisType & text ( NullOpt )
inlinenoexcept

Definition at line 1031 of file Messages.h.

1032 {
1033 constexpr BlockLength offset = 24;
1034 constexpr BlockLength length = 100;
1035
1036 setFixedStr<length>(offset, StrRef());
1037 return *this;
1038 }
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 1022 of file Messages.h.

1023 {
1024 constexpr BlockLength offset = 24;
1025 constexpr BlockLength length = 100;
1026
1027 setFixedStr<length>(offset, value);
1028 return *this;
1029 }

◆ toString()

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

Definition at line 180 of file MessageSerialization.h.

181{
182 return toStr(*this);
183}
std::string toStr(Order::PriceOptional value)
Definition Order.cpp:34

◆ userId() [1/2]

auto userId ( ) const
inlinenoexcept

Gateway ID.

Definition at line 967 of file Messages.h.

968 {
969 constexpr BlockLength offset = 0;
970 constexpr BlockLength length = 20;
971
972 return fixedStr<length>(offset);
973 }

◆ userId() [2/2]

ThisType & userId ( StrRef value)
inlinenoexcept

Gateway ID.

Definition at line 976 of file Messages.h.

977 {
978 constexpr BlockLength offset = 0;
979 constexpr BlockLength length = 20;
980
981 setFixedStr<length>(offset, value);
982 return *this;
983 }