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

Classes

struct  LegsEntry

Public Types

enum  
typedef SchemaTraits Schema
typedef SecurityDefinitionRequest_CreateStrategy ThisType
typedef SbeGroup< LegsEntry, GroupSizeEncoding, MessageSizeLegs
Public Types inherited from SbeMessage
typedef MessageSize EncodedLength
typedef MessageSize BlockLength

Public Member Functions

 SecurityDefinitionRequest_CreateStrategy ()=default
 SecurityDefinitionRequest_CreateStrategy (void *data, EncodedLength length, SchemaVersion version=Schema::Version)
 SecurityDefinitionRequest_CreateStrategy (void *data, EncodedLength length, NoFieldsInit, SchemaVersion version=Schema::Version)
 SecurityDefinitionRequest_CreateStrategy (void *data, EncodedLength length, NoInit)
 SecurityDefinitionRequest_CreateStrategy (SbeMessage message)
 SecurityDefinitionRequest_CreateStrategy (void *data, EncodedLength length, NoInit, NoCheck) noexcept
auto securityReqId () const noexcept
ThisTypesecurityReqId (Int32 value) noexcept
auto securityRequestType () const noexcept
ThisTypesecurityRequestType (SecurityRequestTypeEnum value) noexcept
auto marketTypeId () const noexcept
ThisTypemarketTypeId (Int32 value) noexcept
auto securitySubType () const noexcept
ThisTypesecuritySubType (Int16NULL value) noexcept
ThisTypesecuritySubType (NullOpt) noexcept
auto productId () const noexcept
ThisTypeproductId (Int32NULL value) noexcept
ThisTypeproductId (NullOpt) noexcept
auto startDate () const noexcept(dateToTimestamp::Nothrow)
ThisTypestartDate (Timestamp value) noexcept(timestampToDate::Nothrow)
ThisTypestartDate (NullOpt) noexcept
auto endDate () const noexcept(dateToTimestamp::Nothrow)
ThisTypeendDate (Timestamp value) noexcept(timestampToDate::Nothrow)
ThisTypeendDate (NullOpt) noexcept
auto securityType () const noexcept
ThisTypesecurityType (SecurityTypeEnum value) noexcept
Legs legs () const noexcept
Legs legs () noexcept
Legs legs (Legs::Size length)
Legs legs (Legs::Size length, NoFieldsInit)
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 maxGroupItems=255) 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 16307 of file Messages.h.

Member Typedef Documentation

◆ Legs

Repeating group containing LegsEntry entries.

Definition at line 16556 of file Messages.h.

◆ Schema

Used template schema.

Definition at line 16312 of file Messages.h.

◆ ThisType

This type alias.

Definition at line 16315 of file Messages.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum

Message template ID from SBE schema.

Enumerator
TemplateId 12 

Definition at line 16318 of file Messages.h.

16318{ TemplateId = 12 };

Constructor & Destructor Documentation

◆ SecurityDefinitionRequest_CreateStrategy() [1/6]

Initializes a blank instance.

◆ SecurityDefinitionRequest_CreateStrategy() [2/6]

Initializes an instance over the given memory block.

Definition at line 16562 of file Messages.h.

16563 : SbeMessage(data, length, version)
16564 {
16565 checkVersion<Schema>(version);
16566 checkLength(length, version);
16567 init(TemplateId, minimalBlockLength(version), blockLength(version), Schema::Id);
16568 reset();
16569 }

◆ SecurityDefinitionRequest_CreateStrategy() [3/6]

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 16574 of file Messages.h.

16575 : SbeMessage(data, length, version)
16576 {
16577 checkVersion<Schema>(version);
16578 checkLength(length, version);
16579 init(TemplateId, minimalBlockLength(version), blockLength(version), Schema::Id);
16580 resetVariableFields();
16581 }

◆ SecurityDefinitionRequest_CreateStrategy() [4/6]

Creates an instance over the given memory block.

Definition at line 16584 of file Messages.h.

16585 : SbeMessage(data, length)
16586 {
16587 checkCompatibility();
16588 }

◆ SecurityDefinitionRequest_CreateStrategy() [5/6]

Creates an instance over the given SBE message.

Definition at line 16592 of file Messages.h.

16593 : SbeMessage(message)
16594 {
16595 assert(message.valid());
16596
16597 checkCompatibility();
16598 }

◆ SecurityDefinitionRequest_CreateStrategy() [6/6]

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

Creates an instance over the given memory block.

Performs no checks.

Definition at line 16602 of file Messages.h.

16603 : SbeMessage(data, length, NoCheck())
16604 {
16605 assert(schemaId() == Schema::Id);
16606 assert(version() >= Schema::MinimalVersion);
16607 assert(TemplateId == templateId());
16608 }
const char * version() noexcept

Member Function Documentation

◆ blockLength()

constexpr BlockLength blockLength ( SchemaVersion version)
inlinestaticconstexprnoexcept

Size of message body in bytes.

Definition at line 16830 of file Messages.h.

16831 {
16832 return
16833 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
16834 minimalBlockLength(version);
16835 }

◆ calculateBinarySize()

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

Definition at line 16907 of file Messages.h.

16908 {
16909 return
16910 SbeMessage::calculateBinarySize(tail());
16911 }

◆ className()

constexpr StrRef className ( )
inlinestaticconstexprnoexcept
Returns
class name.

Definition at line 16880 of file Messages.h.

16881 {
16882 return constructStrRef("SecurityDefinitionRequest_CreateStrategy");
16883 }
constexpr StrRef constructStrRef(const char(&value)[Size]) noexcept
Definition StrRef.h:414

◆ endDate() [1/3]

auto endDate ( ) const
inlinenoexcept

UTC days since Unix epoch (January 1st, 1970).

Definition at line 16743 of file Messages.h.

16744 {
16745 constexpr BlockLength offset = 17;
16746 return convertible<NullUTCDateOnly, dateToTimestamp>(offset, optional);
16747 }

◆ endDate() [2/3]

ThisType & endDate ( NullOpt )
inlinenoexcept

Definition at line 16758 of file Messages.h.

16759 {
16760 constexpr BlockLength offset = 17;
16761
16762 setOrdinary(offset, NullUTCDateOnly());
16763 return *this;
16764 }
IntegralConstant< UInt16, 0 > NullUTCDateOnly
Null value for an optional UTCDateOnly field.
Definition Fields.h:964

◆ endDate() [3/3]

ThisType & endDate ( Timestamp value)
inlinenoexcept

UTC days since Unix epoch (January 1st, 1970).

Definition at line 16750 of file Messages.h.

16751 {
16752 constexpr BlockLength offset = 17;
16753
16754 setOrdinary(offset, convert<timestampToDate>(value));
16755 return *this;
16756 }

◆ fixType()

constexpr StrRef fixType ( )
inlinestaticconstexprnoexcept

FIX message type.

Definition at line 16888 of file Messages.h.

16889 {
16890 return constructStrRef("c");
16891 }

◆ getMaxMessageSize()

constexpr UInt64 getMaxMessageSize ( UInt8 maxGroupItems = 255)
inlinestaticconstexprnoexcept

Maximal message size.

Definition at line 16850 of file Messages.h.

16851 {
16852 return
16853 static_cast<UInt64>(MessageHeaderBuilder::Size) +
16854 blockLength(Schema::Version) +
16855 (GroupSizeEncoding::Size + LegsEntry::blockLength(Schema::Version) * static_cast<UInt64>(maxGroupItems));
16856 }

◆ getMinimalVariableFieldsSize()

constexpr MessageSize getMinimalVariableFieldsSize ( SchemaVersion version)
inlinestaticconstexpr

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

Definition at line 16840 of file Messages.h.

16841 {
16842 return
16843 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
16844 static_cast<MessageSize>(Legs::EmptySize);
16845 }
UInt16 MessageSize
Message length type.
Definition Aliases.h:29

◆ legs() [1/4]

Legs legs ( ) const
inlinenoexcept
Returns
instance of Legs repeating group.

Definition at line 16786 of file Messages.h.

16787 {
16788 return getGroup<Legs>(LegsAccess(), *this);
16789 }

◆ legs() [2/4]

Legs legs ( )
inlinenoexcept
Returns
instance of Legs repeating group.

Definition at line 16793 of file Messages.h.

16794 {
16795 return getGroup<Legs>(LegsAccess(), *this);
16796 }

◆ legs() [3/4]

Legs legs ( Legs::Size length)
inline

Setup repeating group with the given number of entries.

Sets all optional fields of the group entries to null.

Returns
noLegs(555) repeating group.

Definition at line 16801 of file Messages.h.

16802 {
16803 return constructGroup<Legs>(
16804 LegsAccess(),
16805 length,
16806 *this);
16807 }

◆ legs() [4/4]

Legs legs ( Legs::Size length,
NoFieldsInit  )
inline

Setup repeating group with the given number of entries.

Returns
noLegs(555) repeating group.

Definition at line 16811 of file Messages.h.

16812 {
16813 return setupGroup<Legs>(
16814 LegsAccess(),
16815 length,
16816 *this);
16817 }

◆ marketTypeId() [1/2]

auto marketTypeId ( ) const
inlinenoexcept

Provides access to marketTypeID field.

Definition at line 16648 of file Messages.h.

16649 {
16650 constexpr BlockLength offset = 5;
16651
16652 return ordinary<Int32>(offset);
16653 }

◆ marketTypeId() [2/2]

ThisType & marketTypeId ( Int32 value)
inlinenoexcept

Provides access to marketTypeID field.

Definition at line 16656 of file Messages.h.

16657 {
16658 constexpr BlockLength offset = 5;
16659
16660 setOrdinary(offset, value);
16661 return *this;
16662 }

◆ minimalBlockLength()

constexpr BlockLength minimalBlockLength ( SchemaVersion version)
inlinestaticconstexprnoexcept

Minimal size of message body in bytes.

Definition at line 16821 of file Messages.h.

16822 {
16823 return
16824 ONIXS_ICEBOE_ASSERT(version >= Schema::MinimalVersion),
16825 20;
16826 }

◆ productId() [1/3]

auto productId ( ) const
inlinenoexcept

int32NULL.

Definition at line 16692 of file Messages.h.

16693 {
16694 constexpr BlockLength offset = 11;
16695
16696 return ordinary<NullInt32NULL>(offset, optional);
16697 }

◆ productId() [2/3]

ThisType & productId ( Int32NULL value)
inlinenoexcept

int32NULL.

Definition at line 16700 of file Messages.h.

16701 {
16702 constexpr BlockLength offset = 11;
16703
16704 setOrdinary(offset, value);
16705 return *this;
16706 }

◆ productId() [3/3]

ThisType & productId ( NullOpt )
inlinenoexcept

Definition at line 16708 of file Messages.h.

16709 {
16710 constexpr BlockLength offset = 11;
16711
16712 setOrdinary(offset, NullInt32NULL());
16713 return *this;
16714 }
IntegralConstant< Int32, -2147483647-1 > NullInt32NULL
Null value for an optional Int32NULL field.
Definition Fields.h:994

◆ reset()

ThisType & reset ( )
inlinenoexcept

Reset all variable-length and optional fields if any.

Definition at line 16866 of file Messages.h.

16867 {
16868 securitySubType(nullOpt);
16869 productId(nullOpt);
16870 startDate(nullOpt);
16871 endDate(nullOpt);
16872
16873 resetVariableFields();
16874 return *this;
16875 }

◆ resetVariableFields()

ThisType & resetVariableFields ( )
inlinenoexcept

Reset all variable-length fields if any.

Definition at line 16859 of file Messages.h.

16860 {
16861 legs(nullOpt);
16862 return *this;
16863 }

◆ securityReqId() [1/2]

auto securityReqId ( ) const
inlinenoexcept

Provides access to securityReqID field.

Definition at line 16612 of file Messages.h.

16613 {
16614 constexpr BlockLength offset = 0;
16615
16616 return ordinary<Int32>(offset);
16617 }

◆ securityReqId() [2/2]

ThisType & securityReqId ( Int32 value)
inlinenoexcept

Provides access to securityReqID field.

Definition at line 16620 of file Messages.h.

16621 {
16622 constexpr BlockLength offset = 0;
16623
16624 setOrdinary(offset, value);
16625 return *this;
16626 }

◆ securityRequestType() [1/2]

auto securityRequestType ( ) const
inlinenoexcept

Use value of 1 to create a strategy.

Definition at line 16630 of file Messages.h.

16631 {
16632 constexpr BlockLength offset = 4;
16633
16634 return enumeration<SecurityRequestTypeEnum>(offset);
16635 }

◆ securityRequestType() [2/2]

ThisType & securityRequestType ( SecurityRequestTypeEnum value)
inlinenoexcept

Use value of 1 to create a strategy.

Definition at line 16638 of file Messages.h.

16639 {
16640 constexpr BlockLength offset = 4;
16641
16642 setEnumeration<SecurityRequestTypeEnum>(offset, value);
16643 return *this;
16644 }

◆ securitySubType() [1/3]

auto securitySubType ( ) const
inlinenoexcept

int16NULL.

Definition at line 16666 of file Messages.h.

16667 {
16668 constexpr BlockLength offset = 9;
16669
16670 return ordinary<NullInt16NULL>(offset, optional);
16671 }

◆ securitySubType() [2/3]

ThisType & securitySubType ( Int16NULL value)
inlinenoexcept

int16NULL.

Definition at line 16674 of file Messages.h.

16675 {
16676 constexpr BlockLength offset = 9;
16677
16678 setOrdinary(offset, value);
16679 return *this;
16680 }

◆ securitySubType() [3/3]

ThisType & securitySubType ( NullOpt )
inlinenoexcept

Definition at line 16682 of file Messages.h.

16683 {
16684 constexpr BlockLength offset = 9;
16685
16686 setOrdinary(offset, NullInt16NULL());
16687 return *this;
16688 }
IntegralConstant< Int16, -32768 > NullInt16NULL
Null value for an optional Int16NULL field.
Definition Fields.h:988

◆ securityType() [1/2]

auto securityType ( ) const
inlinenoexcept

Use MLEG value to create a strategy.

Definition at line 16768 of file Messages.h.

16769 {
16770 constexpr BlockLength offset = 19;
16771
16772 return enumeration<SecurityTypeEnum>(offset);
16773 }

◆ securityType() [2/2]

ThisType & securityType ( SecurityTypeEnum value)
inlinenoexcept

Use MLEG value to create a strategy.

Definition at line 16776 of file Messages.h.

16777 {
16778 constexpr BlockLength offset = 19;
16779
16780 setEnumeration<SecurityTypeEnum>(offset, value);
16781 return *this;
16782 }

◆ startDate() [1/3]

auto startDate ( ) const
inlinenoexcept

UTC days since Unix epoch (January 1st, 1970).

Definition at line 16718 of file Messages.h.

16719 {
16720 constexpr BlockLength offset = 15;
16721 return convertible<NullUTCDateOnly, dateToTimestamp>(offset, optional);
16722 }

◆ startDate() [2/3]

ThisType & startDate ( NullOpt )
inlinenoexcept

Definition at line 16733 of file Messages.h.

16734 {
16735 constexpr BlockLength offset = 15;
16736
16737 setOrdinary(offset, NullUTCDateOnly());
16738 return *this;
16739 }

◆ startDate() [3/3]

ThisType & startDate ( Timestamp value)
inlinenoexcept

UTC days since Unix epoch (January 1st, 1970).

Definition at line 16725 of file Messages.h.

16726 {
16727 constexpr BlockLength offset = 15;
16728
16729 setOrdinary(offset, convert<timestampToDate>(value));
16730 return *this;
16731 }

◆ tail()

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

Definition at line 16899 of file Messages.h.

16900 {
16901 return
16902 legs().tail();
16903 }

◆ toString()

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

Definition at line 1397 of file MessageSerialization.h.

1398{
1399 return toStr(*this);
1400}
std::string toStr(Order::PriceOptional value)
Definition Order.cpp:34