MineLink
 All Data Structures Functions Variables Pages
delphos::BenchByBenchPrecedence Class Reference

Defines maximum difference in height between consecutive benches on the same phase. More...

#include <sinking.h>

Inheritance diagram for delphos::BenchByBenchPrecedence:
Inheritance graph
Collaboration diagram for delphos::BenchByBenchPrecedence:
Collaboration graph

Public Member Functions

 BenchByBenchPrecedence (delphos::BlockModel &bm, const string &phase_attr, double vertical_diff)
 Creates a new Bench by Bench Precedence object. More...
 
 BenchByBenchPrecedence (delphos::BlockModel &bm, const string &phase_attr, double vertical_diff, RampPrecedence *rprec)
 Creates a new Bench by Bench Precedence object. More...
 
virtual void CreateArcs ()
 Creates the arcs of the Precedence object according to the parameters loaded into the instance.
 
const string GetPhaseAttribute () const
 Returns the name of the phase attribute submitted to the instance.
 
const double GetDifference () const
 Returns the value of the maximum bench-difference submitted to the instance.
 
RampPrecedenceGetRampPrecedence () const
 Returns a pointer the submitted RampPrecedence object. More...
 
- Public Member Functions inherited from delphos::Precedence
 Precedence (BlockModel &bm)
 Creates a new precedence with no arcs. More...
 
 Precedence (delphos::Precedence &other)
 Copy constructor.
 
virtual ~Precedence ()
 Destructor.
 
Arc operator[] (const delphos::BlockIndexType &index) const
 Retrieves the Arc instance with given index. More...
 
Arc GetArc (const delphos::BlockIndexType &index) const
 Retrieves the Arc instance with given index. More...
 
void AddArc (const delphos::Arc &new_arc)
 Adds a new arc to the precedence. More...
 
void AddArc (const delphos::BlockIndexType &first, const delphos::BlockIndexType &second)
 Adds a new arc to the precedence. More...
 
void Clear ()
 Deletes all arcs. More...
 
const delphos::BlockIndexType Size () const
 Returns the size (number of arcs) in the precedence. More...
 
const delphos::BlockIndexType GetSize () const
 Returns the size (number of arcs) in the precedence. More...
 
- Public Member Functions inherited from delphos::BlockModelEntity
 BlockModelEntity (delphos::BlockModel &bm)
 Creates a new block instance associated to a given block model. More...
 
delphos::BlockModelGetBlockModel ()
 Retrieves the block model to which the entity is associated. More...
 
const delphos::BlockModelGetBlockModel () const
 Retrieves the block model to which the entity is associated. More...
 

Detailed Description

Defines maximum difference in height between consecutive benches on the same phase.

Given a data column on the BlockModel that will represent the phase of the corresponding blocks, a maximum height value we define the maximum difference height between benches on the same phase as a precedence relationship between the blocks on those benches. This relationship is valid at any period.

Constructor & Destructor Documentation

delphos::BenchByBenchPrecedence::BenchByBenchPrecedence ( delphos::BlockModel bm,
const string &  phase_attr,
double  vertical_diff 
)

Creates a new Bench by Bench Precedence object.

In this case, arcs will be created between all the blocks on the corresponding bench-phases. That is, if a block on the lower bench \(b_l\) has phase \(p_{b_l}\) then it has an arc to every block on the upper bench (first bench that is at least the specified difference units above the lower bench) \(b_u\) if and only if \(p_{b_l}=p_{b_u}\).

Parameters
bmThe BlockModel containing the desired blocks.
phase_attrThe name of the column on the BlockModel bm that represent the blocks phases.
vertical_diffValue of the maximum vertical difference allowed between benches on the same phase.
delphos::BenchByBenchPrecedence::BenchByBenchPrecedence ( delphos::BlockModel bm,
const string &  phase_attr,
double  vertical_diff,
RampPrecedence rprec 
)

Creates a new Bench by Bench Precedence object.

In this case, a RampPrecedence object is passed to the instance. As convention we assume that every bench-phase has at least one access defined on the RampPrecedence. So in this case arcs will only be created between the accesses of the lower bench-phase and the leaves (last blocks to be extracted) of the upper bench-phase. In this sense the amount of arcs created is minimal.

Parameters
bmThe BlockModel containing the desired blocks.
phase_attrThe name of the column on the BlockModel bm that represent the blocks phases.
vertical_diffValue of the maximum vertical difference allowed between benches on the same phase.

Member Function Documentation

RampPrecedence * delphos::BenchByBenchPrecedence::GetRampPrecedence ( ) const

Returns a pointer the submitted RampPrecedence object.

If no pointer has been passed to the constructor then it returns NULL.


The documentation for this class was generated from the following files: