mutable
A Database System for Research and Fast Prototyping
Loading...
Searching...
No Matches
Public Member Functions | Private Attributes | Friends
LinearizedDP::Sequence Struct Reference
Collaboration diagram for LinearizedDP::Sequence:
[legend]

Public Member Functions

 Sequence (const std::vector< std::size_t > &linearization, std::size_t begin, std::size_t end)
 
std::size_t length () const
 
Subproblem subproblem () const
 
std::size_t first_index () const
 Returns the index in linearization of the first element of this sequence.
 
std::size_t last_index () const
 Returns the index in linearization of the last element of this sequence.
 
std::size_t end () const
 
std::size_t first () const
 
std::size_t last () const
 
bool is_at_front () const
 
bool is_at_back () const
 
Subproblem compute_subproblem_from_sequence (std::size_t begin, std::size_t end)
 
void extend_at_front ()
 
void extend_at_back ()
 
void shrink_at_front ()
 
void shrink_at_back ()
 
void dump (std::ostream &out) const
 
void dump () const
 

Private Attributes

const std::vector< std::size_t > & linearization_
 
std::size_t begin_
 

‍the index in the linearization of the first element of this sequence


 
std::size_t end_
 

‍the index in the linearization one past the last element of this sequence


 
Subproblem S_
 

‍the subproblem formed by this sequence


 

Friends

std::ostream & operator<< (std::ostream &out, const Sequence &seq)
 

Detailed Description

Definition at line 462 of file PlanEnumerator.cpp.

Constructor & Destructor Documentation

◆ Sequence()

LinearizedDP::Sequence::Sequence ( const std::vector< std::size_t > &  linearization,
std::size_t  begin,
std::size_t  end 
)
inline

Definition at line 474 of file PlanEnumerator.cpp.

Member Function Documentation

◆ compute_subproblem_from_sequence()

Subproblem LinearizedDP::Sequence::compute_subproblem_from_sequence ( std::size_t  begin,
std::size_t  end 
)
inline

Definition at line 494 of file PlanEnumerator.cpp.

References M_insist.

Referenced by LinearizedDP::operator()().

◆ dump() [1/2]

void LinearizedDP::Sequence::dump ( ) const
inline

Definition at line 537 of file PlanEnumerator.cpp.

References dump().

Referenced by dump().

◆ dump() [2/2]

void LinearizedDP::Sequence::dump ( std::ostream &  out) const
inline

Definition at line 536 of file PlanEnumerator.cpp.

◆ end()

std::size_t LinearizedDP::Sequence::end ( ) const
inline

Definition at line 486 of file PlanEnumerator.cpp.

◆ extend_at_back()

void LinearizedDP::Sequence::extend_at_back ( )
inline

Definition at line 509 of file PlanEnumerator.cpp.

References M_insist.

Referenced by LinearizedDP::operator()().

◆ extend_at_front()

void LinearizedDP::Sequence::extend_at_front ( )
inline

Definition at line 503 of file PlanEnumerator.cpp.

References M_insist.

Referenced by LinearizedDP::operator()().

◆ first()

std::size_t LinearizedDP::Sequence::first ( ) const
inline

Definition at line 488 of file PlanEnumerator.cpp.

◆ first_index()

std::size_t LinearizedDP::Sequence::first_index ( ) const
inline

Returns the index in linearization of the first element of this sequence.

Definition at line 483 of file PlanEnumerator.cpp.

Referenced by LinearizedDP::operator()().

◆ is_at_back()

bool LinearizedDP::Sequence::is_at_back ( ) const
inline

Definition at line 492 of file PlanEnumerator.cpp.

Referenced by LinearizedDP::operator()().

◆ is_at_front()

bool LinearizedDP::Sequence::is_at_front ( ) const
inline

Definition at line 491 of file PlanEnumerator.cpp.

Referenced by LinearizedDP::operator()().

◆ last()

std::size_t LinearizedDP::Sequence::last ( ) const
inline

Definition at line 489 of file PlanEnumerator.cpp.

◆ last_index()

std::size_t LinearizedDP::Sequence::last_index ( ) const
inline

Returns the index in linearization of the last element of this sequence.

Definition at line 485 of file PlanEnumerator.cpp.

Referenced by LinearizedDP::operator()().

◆ length()

std::size_t LinearizedDP::Sequence::length ( ) const
inline

Definition at line 480 of file PlanEnumerator.cpp.

Referenced by LinearizedDP::operator()().

◆ shrink_at_back()

void LinearizedDP::Sequence::shrink_at_back ( )
inline

Definition at line 521 of file PlanEnumerator.cpp.

References M_insist.

Referenced by LinearizedDP::operator()().

◆ shrink_at_front()

void LinearizedDP::Sequence::shrink_at_front ( )
inline

Definition at line 515 of file PlanEnumerator.cpp.

References M_insist.

Referenced by LinearizedDP::operator()().

◆ subproblem()

Subproblem LinearizedDP::Sequence::subproblem ( ) const
inline

Definition at line 481 of file PlanEnumerator.cpp.

Referenced by LinearizedDP::operator()().

Friends And Related Function Documentation

◆ operator<<

std::ostream & operator<< ( std::ostream &  out,
const Sequence seq 
)
friend

Definition at line 527 of file PlanEnumerator.cpp.

Field Documentation

◆ begin_

std::size_t LinearizedDP::Sequence::begin_
private

‍the index in the linearization of the first element of this sequence

Definition at line 467 of file PlanEnumerator.cpp.

◆ end_

std::size_t LinearizedDP::Sequence::end_
private

‍the index in the linearization one past the last element of this sequence

Definition at line 469 of file PlanEnumerator.cpp.

◆ linearization_

const std::vector<std::size_t>& LinearizedDP::Sequence::linearization_
private

Definition at line 465 of file PlanEnumerator.cpp.

◆ S_

Subproblem LinearizedDP::Sequence::S_
private

‍the subproblem formed by this sequence

Definition at line 471 of file PlanEnumerator.cpp.


The documentation for this struct was generated from the following file: