MrpResource

MrpResource — represents a resource in the project.

Synopsis


#include <libplanner/planner.h>

                    MrpResourcePriv;
                    MrpResource;
enum                MrpResourceType;
MrpResource*        mrp_resource_new                    (void);
const gchar*        mrp_resource_get_name               (MrpResource *resource);
void                mrp_resource_set_name               (MrpResource *resource,
                                                         const gchar *name);
void                mrp_resource_assign                 (MrpResource *resource,
                                                         MrpTask *task,
                                                         gint units);
GList*              mrp_resource_get_assignments        (MrpResource *resource);
GList*              mrp_resource_get_assigned_tasks     (MrpResource *resource);
gint                mrp_resource_compare                (gconstpointer a,
                                                         gconstpointer b);
MrpCalendar*        mrp_resource_get_calendar           (MrpResource *resource);
void                mrp_resource_set_calendar           (MrpResource *resource,
                                                         MrpCalendar *calendar);

Object Hierarchy

  GObject
   +----MrpObject
         +----MrpResource

Properties

  "calendar"                 gpointer              : Read / Write
  "cost"                     gfloat                : Read / Write
  "email"                    gchar*                : Read / Write
  "group"                    MrpGroup*             : Read / Write
  "name"                     gchar*                : Read / Write
  "note"                     gchar*                : Read / Write
  "short-name"               gchar*                : Read / Write
  "type"                     gint                  : Read / Write
  "units"                    gint                  : Read / Write

Signals

  "assignment-added"                               : Run Last
  "assignment-removed"                             : Run Last

Description

Details

MrpResourcePriv

typedef struct _MrpResourcePriv MrpResourcePriv;

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


MrpResource

typedef struct _MrpResource MrpResource;

Object representing a task in the project.


enum MrpResourceType

typedef enum {
	MRP_RESOURCE_TYPE_NONE,
	MRP_RESOURCE_TYPE_WORK,
	MRP_RESOURCE_TYPE_MATERIAL
} MrpResourceType;

The type of the resource, work or material.

MRP_RESOURCE_TYPE_NONE

invalid type (unset)

MRP_RESOURCE_TYPE_WORK

work resource

MRP_RESOURCE_TYPE_MATERIAL

material resource

mrp_resource_new ()

MrpResource*        mrp_resource_new                    (void);

Creates a new empty resource.

Returns :

the newly created resource.

mrp_resource_get_name ()

const gchar*        mrp_resource_get_name               (MrpResource *resource);

Retrives the name of resource.

resource :

an MrpResource

Returns :

the name

mrp_resource_set_name ()

void                mrp_resource_set_name               (MrpResource *resource,
                                                         const gchar *name);

Sets the name of resource.

resource :

an MrpResource

name :

new name of resource

mrp_resource_assign ()

void                mrp_resource_assign                 (MrpResource *resource,
                                                         MrpTask *task,
                                                         gint units);

Assigns resource to task by the given amount of units. A value of 100 units corresponds to fulltime assignment.

resource :

an MrpResource

task :

an MrpTask

units :

the amount of units of assignment

mrp_resource_get_assignments ()

GList*              mrp_resource_get_assignments        (MrpResource *resource);

Retrieves the assignments that this resource has. If caller needs to manipulate the returned list, a copy of it needs to be made.

resource :

an MrpResource.

Returns :

The assignments of resource. It should not be freed.

mrp_resource_get_assigned_tasks ()

GList*              mrp_resource_get_assigned_tasks     (MrpResource *resource);

Retrieves a list of all the tasks that this resource is assigned to. It is basically a convenience wrapper around mrp_resource_get_assignments().

resource :

an MrpResource

Returns :

A list of the tasks that this resource is assigned to. Needs to be freed when not used anymore.

mrp_resource_compare ()

gint                mrp_resource_compare                (gconstpointer a,
                                                         gconstpointer b);

Comparison routine for resources. It is suitable for sorting, and only compares the resource name.

a :

an MrpResource

b :

an MrpResource

Returns :

-1 if a is less than b, 1 id a is greater than b, and 1 if equal.

mrp_resource_get_calendar ()

MrpCalendar*        mrp_resource_get_calendar           (MrpResource *resource);

Retrieves the calendar that is used for resource. If no calendar is set, NULL is returned, which means the project default calendar.

resource :

an MrpResource

Returns :

a MrpCalendar, or NULL if no specific calendar is set.

mrp_resource_set_calendar ()

void                mrp_resource_set_calendar           (MrpResource *resource,
                                                         MrpCalendar *calendar);

Sets the calendar to use for resource. NULL means to use the project default calendar.

resource :

an MrpResource

calendar :

the MrpCalendar to set, or NULL

Property Details

The "calendar" property

  "calendar"                 gpointer              : Read / Write

The calendar this resource uses.


The "cost" property

  "cost"                     gfloat                : Read / Write

The standard cost of the resource.

Allowed values: >= 0

Default value: 0


The "email" property

  "email"                    gchar*                : Read / Write

The email address of the resource.

Default value: NULL


The "group" property

  "group"                    MrpGroup*             : Read / Write

The group that the resource belongs to.


The "name" property

  "name"                     gchar*                : Read / Write

The name of the resource.

Default value: NULL


The "note" property

  "note"                     gchar*                : Read / Write

Resource note.

Default value: ""


The "short-name" property

  "short-name"               gchar*                : Read / Write

The shorter name, initials or nickname of the resource.

Default value: NULL


The "type" property

  "type"                     gint                  : Read / Write

The type of resource this is.

Allowed values: [0,2]

Default value: 1


The "units" property

  "units"                    gint                  : Read / Write

The amount of units this resource has.

Allowed values: >= -1

Default value: 0

Signal Details

The "assignment-added" signal

void                user_function                      (MrpResource   *mrpresource,
                                                        MrpAssignment *arg1,
                                                        gpointer       user_data)        : Run Last

mrpresource :

the object which received the signal.

arg1 :

user_data :

user data set when the signal handler was connected.

The "assignment-removed" signal

void                user_function                      (MrpResource   *mrpresource,
                                                        MrpAssignment *arg1,
                                                        gpointer       user_data)        : Run Last

mrpresource :

the object which received the signal.

arg1 :

user_data :

user data set when the signal handler was connected.