30 int index()
const {
return index_; }
31 int count()
const {
return count_; }
44 throw std::invalid_argument(
"invalid order-birth dispatch cursor");
73 throw std::invalid_argument(
"invalid order-birth fill evaluation");
83 int bar()
const {
return bar_; }
98 int64_t timestamp_ = 0;
100 double cursor_price_ = std::numeric_limits<double>::quiet_NaN();
101 uint64_t first_fill_ = 0;
102 uint64_t last_fill_ = 0;
103 uint64_t evaluation_ordinal_ = 0;
static BirthCursor segment(BirthCursorDomain domain, int index, int count)
BirthCursorDomain domain() const
BirthCursorPosition position() const
static BirthCursor point(BirthCursorDomain domain, int index, int count)
int following_segment() const
bool terminal_point() const
uint64_t first_fill() const
bool at_terminal_fill() const
static OrderBirth direct_command(int bar, int64_t timestamp)
static OrderBirth chart_evaluation(int bar, int64_t timestamp)
static OrderBirth fill_evaluation(int bar, int64_t timestamp, BirthCursor cursor, double price, uint64_t first_fill, uint64_t last_fill, uint64_t evaluation_ordinal)
int64_t timestamp() const
OrderBirthCause cause() const
uint64_t evaluation_ordinal() const
double cursor_price() const
const BirthCursor & cursor() const
uint64_t last_fill() const