MrpRelation

MrpRelation — represents a task predecessor relation in the project.

Synopsis


#include <libplanner/planner.h>

                    MrpRelationPriv;
                    MrpRelation;
enum                MrpRelationType;
MrpTask*            mrp_relation_get_predecessor        (MrpRelation *relation);
MrpTask*            mrp_relation_get_successor          (MrpRelation *relation);
gint                mrp_relation_get_lag                (MrpRelation *relation);
MrpRelationType     mrp_relation_get_relation_type      (MrpRelation *relation);

Description

A predecessor relation is used to affect the scheduling of a task relative another task. A relation may have a lag time associated to it, so that a task can be scheduled to start after another task has finished, plus a lag time.

Details

MrpRelationPriv

typedef struct _MrpRelationPriv MrpRelationPriv;

A private struct for internal use only. The definition of this structure is not publically available.


MrpRelation

typedef struct {
	MrpObject        parent;
	MrpRelationPriv *priv;
} MrpRelation;

Object representing a predecessor relation between two tasks.


enum MrpRelationType

typedef enum {
	MRP_RELATION_NONE = 0, /* unset */
	MRP_RELATION_FS,       /* finish-to-start */
	MRP_RELATION_FF,       /* finish-to-finish */
	MRP_RELATION_SS,       /* start-to-start */
	MRP_RELATION_SF        /* start-to-finish */
} MrpRelationType;

The type of relation.

MRP_RELATION_NONE

invalid relation type (unset)

MRP_RELATION_FS

finish to start

MRP_RELATION_FF

finish to finish (unimplemented)

MRP_RELATION_SS

start to start (unimplemented)

MRP_RELATION_SF

start to finish (unimplemented)

mrp_relation_get_predecessor ()

MrpTask*            mrp_relation_get_predecessor        (MrpRelation *relation);

Retrieves the predecessor of relation.

relation :

an MrpRelation

Returns :

the predecessor task.

mrp_relation_get_successor ()

MrpTask*            mrp_relation_get_successor          (MrpRelation *relation);

Retrieves the successor of relation.

relation :

an MrpRelation

Returns :

the successor task.

mrp_relation_get_lag ()

gint                mrp_relation_get_lag                (MrpRelation *relation);

Retrieves the lag between the predecessor and successor in relation.

relation :

an MrpRelation

Returns :

Lag time in seconds.

mrp_relation_get_relation_type ()

MrpRelationType     mrp_relation_get_relation_type      (MrpRelation *relation);

Retrieves the relation type of relation.

relation :

an MrpRelation

Returns :

the MrpRelationType of the relation.