fix8  version 1.4.0
Open Source C++ FIX Framework
field.hpp File Reference
#include <Poco/Timestamp.h>
#include <Poco/DateTime.h>

Go to the source code of this file.

Classes

struct  FIX8::EnumType< field >
 Int2Type idiom. Kudos to Andrei Alexandrescu. More...
 
struct  FIX8::RealmBase
 Domain range/set static metadata base class. More...
 
class  FIX8::BaseField
 The base field class (ABC) for all fields. More...
 
class  FIX8::Field< T, field >
 Field template. There will ONLY be partial template specialisations of this template. More...
 
class  FIX8::Field< int, field >
 Partial specialisation for int field type. More...
 
class  FIX8::Field< char *, field >
 Partial specialisation for char * field type. More...
 
class  FIX8::Field< f8String, field >
 Partial specialisation for f8String field type. More...
 
class  FIX8::Field< fp_type, field >
 Partial specialisation for fp_type field type. fp_type is singe or double. More...
 
class  FIX8::Field< char, field >
 Partial specialisation for unsigned short field type. More...
 
class  FIX8::Field< UTCTimestamp, field >
 Partial specialisation for UTCTimestamp field type. More...
 
class  FIX8::Field< UTCTimeOnly, field >
 Partial specialisation for UTCTimeOnly field type. More...
 
class  FIX8::Field< UTCDateOnly, field >
 Partial specialisation for UTCDateOnly field type. More...
 
class  FIX8::Field< LocalMktDate, field >
 Partial specialisation for LocalMktDate field type. More...
 
class  FIX8::Field< MonthYear, field >
 Partial specialisation for MonthYear field type. More...
 
class  FIX8::Field< TZTimeOnly, field >
 Partial specialisation for TZTimeOnly field type. More...
 
class  FIX8::Field< TZTimestamp, field >
 Partial specialisation for TZTimestamp field type. More...
 
class  FIX8::Field< Length, field >
 Partial specialisation for Length field type. More...
 
class  FIX8::Field< TagNum, field >
 Partial specialisation for TagNum field type. More...
 
class  FIX8::Field< SeqNum, field >
 Partial specialisation for SeqNum field type. More...
 
class  FIX8::Field< NumInGroup, field >
 Partial specialisation for NumInGroup field type. More...
 
class  FIX8::Field< DayOfMonth, field >
 Partial specialisation for DayOfMonth field type. More...
 
class  FIX8::Field< Boolean, field >
 Partial specialisation for Boolean field type. More...
 
class  FIX8::Inst
 Field metadata structures. More...
 
struct  FIX8::Inst::_gen
 
struct  FIX8::BaseEntry
 

Namespaces

 FIX8
 

Typedefs

using FIX8::UTCTimestamp = EnumType< FieldTrait::ft_UTCTimestamp >
 
using FIX8::UTCTimeOnly = EnumType< FieldTrait::ft_UTCTimeOnly >
 
using FIX8::UTCDateOnly = EnumType< FieldTrait::ft_UTCDateOnly >
 
using FIX8::LocalMktDate = EnumType< FieldTrait::ft_LocalMktDate >
 
using FIX8::MonthYear = EnumType< FieldTrait::ft_MonthYear >
 
using FIX8::TZTimeOnly = EnumType< FieldTrait::ft_TZTimeOnly >
 
using FIX8::TZTimestamp = EnumType< FieldTrait::ft_TZTimestamp >
 
using FIX8::Length = EnumType< FieldTrait::ft_Length >
 
using FIX8::TagNum = EnumType< FieldTrait::ft_TagNum >
 
using FIX8::SeqNum = EnumType< FieldTrait::ft_SeqNum >
 
using FIX8::NumInGroup = EnumType< FieldTrait::ft_NumInGroup >
 
using FIX8::DayOfMonth = EnumType< FieldTrait::ft_DayOfMonth >
 
using FIX8::Boolean = EnumType< FieldTrait::ft_Boolean >
 
using FIX8::Qty = fp_type
 
using FIX8::Amt = fp_type
 
using FIX8::price = fp_type
 
using FIX8::PriceOffset = fp_type
 
using FIX8::Percentage = fp_type
 
using FIX8::MultipleCharValue = f8String
 
using FIX8::MultipleStringValue = f8String
 
using FIX8::country = f8String
 
using FIX8::currency = f8String
 
using FIX8::Exchange = f8String
 
using FIX8::Language = f8String
 
using FIX8::XMLData = f8String
 
using FIX8::data = f8String
 
using FIX8::msg_seq_num = Field< SeqNum, Common_MsgSeqNum >
 
using FIX8::begin_seq_num = Field< SeqNum, Common_BeginSeqNo >
 
using FIX8::end_seq_num = Field< SeqNum, Common_EndSeqNo >
 
using FIX8::new_seq_num = Field< SeqNum, Common_NewSeqNo >
 
using FIX8::ref_seq_num = Field< SeqNum, Common_RefSeqNum >
 
using FIX8::body_length = Field< Length, Common_BodyLength >
 
using FIX8::sender_comp_id = Field< f8String, Common_SenderCompID >
 
using FIX8::target_comp_id = Field< f8String, Common_TargetCompID >
 
using FIX8::msg_type = Field< f8String, Common_MsgType >
 
using FIX8::check_sum = Field< f8String, Common_CheckSum >
 
using FIX8::begin_string = Field< f8String, Common_BeginString >
 
using FIX8::test_request_id = Field< f8String, Common_TestReqID >
 
using FIX8::text = Field< f8String, Common_Text >
 
using FIX8::default_appl_ver_id = Field< f8String, Common_DefaultApplVerID >
 
using FIX8::ref_msg_type = Field< f8String, Common_RefMsgType >
 
using FIX8::sending_time = Field< UTCTimestamp, Common_SendingTime >
 
using FIX8::orig_sending_time = Field< UTCTimestamp, Common_OrigSendingTime >
 
using FIX8::gap_fill_flag = Field< Boolean, Common_GapFillFlag >
 
using FIX8::poss_dup_flag = Field< Boolean, Common_PossDupFlag >
 
using FIX8::reset_seqnum_flag = Field< Boolean, Common_ResetSeqNumFlag >
 
using FIX8::heartbeat_interval = Field< int, Common_HeartBtInt >
 
using FIX8::encrypt_method = Field< int, Common_EncryptMethod >
 
using FIX8::business_reject_reason = Field< int, Common_BusinessRejectReason >
 
using FIX8::onbehalfof_comp_id = Field< f8String, Common_OnBehalfOfCompID >
 
using FIX8::onbehalfof_sub_id = Field< f8String, Common_OnBehalfOfSubID >
 
using FIX8::onbehalfof_location_id = Field< f8String, Common_OnBehalfOfLocationID >
 
using FIX8::onbehalfof_sending_time = Field< UTCTimestamp, Common_OnBehalfOfSendingTime >
 

Enumerations

enum  FIX8::TimeIndicator {
  FIX8::_time_only, FIX8::_time_with_ms, FIX8::_short_date_only, FIX8::_date_only,
  FIX8::_sec_only, FIX8::_with_ms
}
 

Functions

const size_t FIX8::MAX_MSGTYPE_FIELD_LEN (32)
 
const size_t FIX8::HEADER_CALC_OFFSET (32)
 
void FIX8::format0 (int data, char *to, int width)
 
size_t FIX8::parse_decimal (const char *begin, size_t len, int &to)
 
time_t FIX8::time_to_epoch (const tm &ltm, int utcdiff=0)
 
size_t FIX8::date_time_format (const Tickval &tickval, char *to, TimeIndicator ind)
 
Tickval::ticks FIX8::date_time_parse (const char *ptr, size_t len)
 
Tickval::ticks FIX8::time_parse (const char *ptr, size_t len, bool timeonly=false)
 
Tickval::ticks FIX8::date_parse (const char *ptr, size_t len)
 
const f8String FIX8::Common_MsgType_HEARTBEAT ("0")
 
const f8String FIX8::Common_MsgType_TEST_REQUEST ("1")
 
const f8String FIX8::Common_MsgType_RESEND_REQUEST ("2")
 
const f8String FIX8::Common_MsgType_REJECT ("3")
 
const f8String FIX8::Common_MsgType_SEQUENCE_RESET ("4")
 
const f8String FIX8::Common_MsgType_LOGOUT ("5")
 
const f8String FIX8::Common_MsgType_LOGON ("A")
 
const f8String FIX8::Common_MsgType_BUSINESS_REJECT ("j")
 
const char FIX8::Common_MsgByte_HEARTBEAT ('0')
 
const char FIX8::Common_MsgByte_TEST_REQUEST ('1')
 
const char FIX8::Common_MsgByte_RESEND_REQUEST ('2')
 
const char FIX8::Common_MsgByte_REJECT ('3')
 
const char FIX8::Common_MsgByte_SEQUENCE_RESET ('4')
 
const char FIX8::Common_MsgByte_LOGOUT ('5')
 
const char FIX8::Common_MsgByte_LOGON ('A')
 
const char FIX8::Common_MsgByte_BUSINESS_REJECT ('j')
 
const unsigned short FIX8::Common_BeginSeqNo (7)
 
const unsigned short FIX8::Common_BeginString (8)
 
const unsigned short FIX8::Common_BodyLength (9)
 
const unsigned short FIX8::Common_CheckSum (10)
 
const unsigned short FIX8::Common_EndSeqNo (16)
 
const unsigned short FIX8::Common_MsgSeqNum (34)
 
const unsigned short FIX8::Common_MsgType (35)
 
const unsigned short FIX8::Common_NewSeqNo (36)
 
const unsigned short FIX8::Common_PossDupFlag (43)
 
const unsigned short FIX8::Common_RefSeqNum (45)
 
const unsigned short FIX8::Common_SenderCompID (49)
 
const unsigned short FIX8::Common_SendingTime (52)
 
const unsigned short FIX8::Common_TargetCompID (56)
 
const unsigned short FIX8::Common_Text (58)
 
const unsigned short FIX8::Common_EncryptMethod (98)
 
const unsigned short FIX8::Common_HeartBtInt (108)
 
const unsigned short FIX8::Common_TestReqID (112)
 
const unsigned short FIX8::Common_OnBehalfOfCompID (115)
 
const unsigned short FIX8::Common_OnBehalfOfSubID (116)
 
const unsigned short FIX8::Common_OrigSendingTime (122)
 
const unsigned short FIX8::Common_GapFillFlag (123)
 
const unsigned short FIX8::Common_ResetSeqNumFlag (141)
 
const unsigned short FIX8::Common_OnBehalfOfLocationID (144)
 
const unsigned short FIX8::Common_OnBehalfOfSendingTime (370)
 
const unsigned short FIX8::Common_RefMsgType (372)
 
const unsigned short FIX8::Common_BusinessRejectReason (380)
 
const unsigned short FIX8::Common_DefaultApplVerID (1137)