![]() |
MineLink
|
Defines maximum difference in height between consecutive phase-bench. More...
#include <sinking.h>
Public Member Functions | |
BenchPhaseDifferencePrecedence (delphos::BlockModel &bm, const string &phase_attr, const double vertical_diff, const vector< pair< int, int > > &phases) | |
Creates a new Bench-Phase Difference Precedence object. More... | |
BenchPhaseDifferencePrecedence (delphos::BlockModel &bm, const string &phase_attr, const double vertical_diff, const vector< pair< int, int > > &phases, RampPrecedence *rprec) | |
Creates a new Bench-Phase Difference 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 difference submitted to the instance. | |
vector< pair< int, int > > | GetConsecutivePhasesContainer () const |
Returns the container of the consecutive phases pairs. | |
RampPrecedence * | GetRampPrecedence () const |
Returns a pointer to the submitted RampPrecedence object. More... | |
![]() | |
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... | |
![]() | |
BlockModelEntity (delphos::BlockModel &bm) | |
Creates a new block instance associated to a given block model. More... | |
delphos::BlockModel & | GetBlockModel () |
Retrieves the block model to which the entity is associated. More... | |
const delphos::BlockModel & | GetBlockModel () const |
Retrieves the block model to which the entity is associated. More... | |
Defines maximum difference in height between consecutive phase-bench.
Given a data column on the BlockModel that will represent the phase of the corresponding blocks, a maximum height value and a set of correspondence between some of the values on that column that represents the pairs of phases that are consecutive, we define the maximum difference between benches on consecutive phases as a precedence relationship between the blocks (or some of them) on the corresponding phase-bench. This relationship is valid at any period.
delphos::BenchPhaseDifferencePrecedence::BenchPhaseDifferencePrecedence | ( | delphos::BlockModel & | bm, |
const string & | phase_attr, | ||
const double | vertical_diff, | ||
const vector< pair< int, int > > & | phases | ||
) |
Creates a new Bench-Phase Difference 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 their phases are consecutive.
bm | The BlockModel containing the desired blocks. |
phase_attr | The name of the column on the BlockModel bm that represent the blocks phases. |
vertical_diff | Value of the maximum vertical difference allowed between benches on consecutive phases. |
phases | Container with the pairs of values that indicates which phases are consecutive. By convention we set the order in the following manner \((p_i,p_j)\), where that phase \(p_i\) precedes the phase \(p_j\). |
delphos::BenchPhaseDifferencePrecedence::BenchPhaseDifferencePrecedence | ( | delphos::BlockModel & | bm, |
const string & | phase_attr, | ||
const double | vertical_diff, | ||
const vector< pair< int, int > > & | phases, | ||
RampPrecedence * | rprec | ||
) |
Creates a new Bench-Phase Difference 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.
bm | The BlockModel containing the desired blocks. |
phase_attr | The name of the column on the BlockModel bm that represent the blocks phases. |
vertical_diff | Value of the maximum vertical difference allowed between benches on consecutive phases. |
phases | Container with that pairs of values that indicates which phases are consecutive. By convention we set the order in the following manner \((p_i,p_j)\), where that phase \(p_i\) precedes the phase \(p_j\). |
rprec | Pointer to a RampPrecedence object. As stated above it is assumed that every bench-phase has at least one access defined and the arcs of this object have been already created. |
RampPrecedence * delphos::BenchPhaseDifferencePrecedence::GetRampPrecedence | ( | ) | const |
Returns a pointer to the submitted RampPrecedence object.
If no RampPrecedence was submitted to the constructor, then it returns NULL.