eolib-cpp 0.1.0-beta.7
Core C++ library for writing Endless Online applications
Loading...
Searching...
No Matches
eolib::packet::InitSequenceStart Class Referencefinal

A sequence start sent in the InitInitServerPacket (connection initialization). More...

#include <eolib/packet/sequence_start.hpp>

Inherits eolib::packet::SequenceStart.

Public Member Functions

int Value () const noexcept override
 Gets the sequence start value.
int Seq1 () const noexcept
 Gets the seq1 byte value sent in the InitInitServerPacket.
int Seq2 () const noexcept
 Gets the seq2 byte value sent in the InitInitServerPacket.
Public Member Functions inherited from eolib::packet::SequenceStart
virtual ~SequenceStart ()=default

Static Public Member Functions

static InitSequenceStart FromInitValues (int seq1, int seq2) noexcept
 Creates an instance from the seq1 and seq2 values in the InitInitServerPacket.
template<typename Urbg>
static InitSequenceStart Generate (Urbg &rng)
 Generates an instance with a random value in the range [0, MaxValue).
static InitSequenceStart Generate ()
 Generates an instance with a random value in the range [0, MaxValue), using a thread-local random engine.

Static Public Attributes

static constexpr int MaxValue = 1757
 The exclusive upper bound of generated values.

Additional Inherited Members

Protected Member Functions inherited from eolib::packet::SequenceStart
 SequenceStart ()=default
 SequenceStart (const SequenceStart &)=default
 SequenceStart (SequenceStart &&)=default
SequenceStart & operator= (const SequenceStart &)=default
SequenceStart & operator= (SequenceStart &&)=default

Detailed Description

A sequence start sent in the InitInitServerPacket (connection initialization).

Member Function Documentation

◆ FromInitValues()

InitSequenceStart eolib::packet::InitSequenceStart::FromInitValues ( int seq1,
int seq2 )
staticnoexcept

Creates an instance from the seq1 and seq2 values in the InitInitServerPacket.

Parameters
seq1the seq1 byte value.
seq2the seq2 byte value.
Returns
the sequence start.

◆ Generate() [1/2]

template<typename Urbg>
InitSequenceStart eolib::packet::InitSequenceStart::Generate ( Urbg & rng)
inlinestatic

Generates an instance with a random value in the range [0, MaxValue).

Parameters
rngthe uniform random bit generator to use, e.g. std::mt19937.
Returns
the generated instance.

◆ Generate() [2/2]

InitSequenceStart eolib::packet::InitSequenceStart::Generate ( )
static

Generates an instance with a random value in the range [0, MaxValue), using a thread-local random engine.

Returns
the generated instance.

◆ Value()

int eolib::packet::InitSequenceStart::Value ( ) const
overridevirtualnoexcept

Gets the sequence start value.

Returns
the sequence start value.

Implements eolib::packet::SequenceStart.

◆ Seq1()

int eolib::packet::InitSequenceStart::Seq1 ( ) const
noexcept

Gets the seq1 byte value sent in the InitInitServerPacket.

Returns
the seq1 value.

◆ Seq2()

int eolib::packet::InitSequenceStart::Seq2 ( ) const
noexcept

Gets the seq2 byte value sent in the InitInitServerPacket.

Returns
the seq2 value.

Member Data Documentation

◆ MaxValue

int eolib::packet::InitSequenceStart::MaxValue = 1757
staticconstexpr

The exclusive upper bound of generated values.