ITK Function Reference

(V10000.1.0.60_20160308.00)
Data Structures | Macros | Typedefs | Functions
schmgt_bridge_itk.h File Reference
#include <tc/tc_startup.h>
#include <itk/mem.h>
#include <schmgt_bridge/libschmgt_bridge_exports.h>
#include <schmgt_bridge/libschmgt_bridge_undef.h>

Go to the source code of this file.

Data Structures

struct  AddFixedCost_d
 
struct  AddMembers_d
 
struct  AssignmentCreate_d
 
struct  AssignmentUpdate_d
 
struct  AttributeUpdateContainer_d
 
struct  DependencyCreate_d
 
struct  DependencyUpdate_d
 
struct  MoveRequest_d
 
struct  ObjectUpdateContainer_d
 
struct  TaskCreateContainer_d
 
struct  TypedAttributeUpdateContainer_d
 

Macros

#define NUM_OF_ATTRIBS   28
 
#define RECALCULATE_ALL   0
 
#define RECALCULATE_EXEC   1
 
#define RECALCULATE_SCHED   2
 

Typedefs

typedef struct AddFixedCost_d AddFixedCost_t
 
typedef struct AddMembers_d AddMembers_t
 
typedef struct AssignmentCreate_d AssignmentCreate_t
 
typedef struct AssignmentUpdate_d AssignmentUpdate_t
 
typedef struct
AttributeUpdateContainer_d 
AttributeUpdateContainer_t
 
typedef struct DependencyCreate_d DependencyCreate_t
 
typedef struct DependencyUpdate_d DependencyUpdate_t
 
typedef struct MoveRequest_d MoveRequest_t
 
typedef struct
ObjectUpdateContainer_d 
ObjectUpdateContainer_t
 
typedef struct
TaskCreateContainer_d 
TaskCreateContainer_t
 
typedef struct
TypedAttributeUpdateContainer_d 
TypedAttributeUpdateContainer_t
 

Functions

SCHMGTBRI_API int SCHMGT_add_fixed_cost (int num_fixed_costs, const AddFixedCost_t *add_fixed_cost_inputs, int *invalid_input_index, int *num_added_fixed_costs, tag_t **added_fixed_costs)
 
SCHMGTBRI_API int SCHMGT_add_members (int num_members, AddMembers_t *add_member_inputs, int *invalid_input_index, int *num_added_members, tag_t **members)
 
SCHMGTBRI_API int SCHMGT_claim_assignment (const tag_t &task, const tag_t &assignment, tag_t *newAssignments)
 
SCHMGTBRI_API int SCHMGT_create_assignments (const tag_t &schedule, int numCreate, AssignmentCreate_t *createInputs, int *numCreatedAssignments, tag_t **createdAssignments)
 
SCHMGTBRI_API int SCHMGT_create_dependency (tag_t schedule, int numCreate, DependencyCreate_t *createInputs, tag_t **createdDependencies, int *numUpdatedTasks, tag_t **updatedTasks)
 
SCHMGTBRI_API int SCHMGT_create_dependency2 (tag_t schedule, int numCreate, DependencyCreate_t *createInputs, tag_t **createdDependencies, int *numUpdatedTasks, tag_t **updatedTasks, int *numProxyCreated, tag_t **createdProxies)
 
SCHMGTBRI_API int SCHMGT_create_tasks_non_interactive (const tag_t &schedule, int numCreate, TaskCreateContainer_t *createInputs, tag_t **createdTasks, int *numUpdated, tag_t **updatedTasks)
 
SCHMGTBRI_API int SCHMGT_critical_tasks (tag_t schedule, int *numTask, tag_t **criticalTasks, int *numProxyTask, tag_t **criticalProxyTasks)
 
SCHMGTBRI_API int SCHMGT_delete_assignments (tag_t schedule, int numDelete, tag_t *assignments)
 
SCHMGTBRI_API int SCHMGT_delete_dependency (tag_t schedule, int numDelete, tag_t **dependencies, int *numUpdatedTasks, tag_t **updatedTasks)
 
SCHMGTBRI_API int SCHMGT_delete_tasks_non_interactive (tag_t schedule, int numTasksToDelete, tag_t *tasksToDelete, int *numUpdatedTasks, tag_t **updatedTasks, int *numOrphanedTasks, tag_t **orphanedTasks)
 
SCHMGTBRI_API int SCHMGT_generate_unique_task_id (char **unique_task_id)
 
SCHMGTBRI_API int SCHMGT_launch_workflow (tag_t task, tag_t *epmJob)
 
SCHMGTBRI_API int SCHMGT_move_tasks_non_interactive (const tag_t &schedule, int numTaskToMove, MoveRequest_t *updateInputs)
 
SCHMGTBRI_API int SCHMGT_recalculate_schedule_non_interactive (tag_t schedule, int type, logical async)
 
SCHMGTBRI_API int SCHMGT_scale_schedule_non_interactive (tag_t schedule, double factor, int type, logical checkState, int *numUpdatedTasks, tag_t **updatedTasks)
 
SCHMGTBRI_API int SCHMGT_shift_schedule_non_interactive (tag_t schedule, date_t newDate, logical newFinish, int *numUpdatedTasks, tag_t **updatedTasks)
 
SCHMGTBRI_API int SCHMGT_update_assignments (const tag_t &schedule, int numUpdate, AssignmentUpdate_t *updateInputs, int *numUpdatedAssignments, tag_t **updatedAssignments)
 
SCHMGTBRI_API int SCHMGT_update_dependency (tag_t schedule, int numUpdate, DependencyUpdate_t *updateInputs, int *numUpdatedTasks, tag_t **updatedTasks)
 
SCHMGTBRI_API int SCHMGT_update_schedule_non_interactive (ObjectUpdateContainer_t update, int *numUpdatedTasks, tag_t **updatedTasks)
 
SCHMGTBRI_API int SCHMGT_update_tasks_non_interactive (const tag_t &schedule, int numTasksToUpdate, ObjectUpdateContainer_t *updateInputs, int *numUpdated, tag_t **updatedTasks)
 

Detailed Description

This header file declares data types and ITKs to be used by customers of Teamcenter Schedule Management

Definition in file schmgt_bridge_itk.h.

Macro Definition Documentation

#define NUM_OF_ATTRIBS   28

The maximum size of arrays in these structures

Definition at line 23 of file schmgt_bridge_itk.h.

#define RECALCULATE_ALL   0

Recalculate both scheduling and execution data

Definition at line 22 of file schmgt_bridge_itk.h.

#define RECALCULATE_EXEC   1

Recalculate the execution data

Definition at line 20 of file schmgt_bridge_itk.h.

#define RECALCULATE_SCHED   2

Recalculate the scheduling data

Definition at line 21 of file schmgt_bridge_itk.h.

Typedef Documentation

Structure to define a fixed cost to be added to a Schedule Task.
It is used as input parameter of the SCHMGT_add_fixed_cost ITK

typedef struct AddMembers_d AddMembers_t

struct to add members to a given schedule. It is used as input parameter of the SCHMGT_add_members ITK.

struct to create assignments.

struct to update existing assignments.

An atttribute update

struct to create a dependency (or Cross Schedule Dependency)

struct for to update existing dependencies by providing a new lag and type

typedef struct MoveRequest_d MoveRequest_t

A request to move a Task.

The object update Container

The structure to create a Task

A typed update Container

Function Documentation

SCHMGTBRI_API int SCHMGT_add_fixed_cost ( int  num_fixed_costs,
const AddFixedCost_t add_fixed_cost_inputs,
int *  invalid_input_index,
int *  num_added_fixed_costs,
tag_t **  added_fixed_costs 
)

Add Fixed Costs to the specified Schedule Task.
The output parameter #added_fixed_costs (of size #num_added_fixed_costs) will contain the tags of the added fixed costs.

If any input structure is invalid, the method will stop the processing at that index and will return the error code for that input. On error, no fixed cost will be added by the function.
The parameter #invalid_input_index contains the index of the first offending structure in case of error. Its value is "-1" when no error is detected for the input structures.

Returns
Parameters
num_fixed_costs(I) The number of fixed costs to add
add_fixed_cost_inputs(I) The inputs needed to add fixed costs
invalid_input_index(OF) Index of the first invalid input cost
num_added_fixed_costs(OF) The number of added fixed costs
added_fixed_costs(OF) num_added_fixed_costs Tag for the added fixed costs
SCHMGTBRI_API int SCHMGT_add_members ( int  num_members,
AddMembers_t add_member_inputs,
int *  invalid_input_index,
int *  num_added_members,
tag_t **  members 
)

Add members to the specified schedule.
br/>If any input structure is invalid, the method will stop the processing at that index and return the error code for that input. No members will have been added by the function. Furthermore, the index of the offending structure will be indicated in the output parameter "invalid_input_index". Its value is "-1" when no error is detected for the input structure. The output parameter "members" (of size "num_added_members") will contain the tags of the added members up to the last successful addition. If an error has occurred during the addition of one of the members, the function will return the associated error for that member structure.
The function returns:

Parameters
num_members(I) The number of members to add
add_member_inputs(I) The inputs needed to add members
invalid_input_index(OF) Index of the invalid input member
num_added_members(OF) The number of added members
members(OF) num_added_members Tag for the added members.
SCHMGTBRI_API int SCHMGT_claim_assignment ( const tag_t task,
const tag_t assignment,
tag_t newAssignments 
)

Creates Resource Assignments to Tasks in the Schedule.

Parameters
task(I) The tag of the task
assignment(I) The tag of the assignment to claim
newAssignments(OF) The tag of the claimed assignment
SCHMGTBRI_API int SCHMGT_create_assignments ( const tag_t schedule,
int  numCreate,
AssignmentCreate_t createInputs,
int *  numCreatedAssignments,
tag_t **  createdAssignments 
)

Creates Resource Assignments to Tasks in the Schedule.

Parameters
schedule(I) The Schedule tag
numCreate(I) Number of Assignments to create
createInputs(I) numCreate Containers to create the Assignments
numCreatedAssignments(O) The number of created Assignments
createdAssignments(OF) numCreatedAssignments Tags of the created Assignments
SCHMGTBRI_API int SCHMGT_create_dependency ( tag_t  schedule,
int  numCreate,
DependencyCreate_t createInputs,
tag_t **  createdDependencies,
int *  numUpdatedTasks,
tag_t **  updatedTasks 
)

Creates Dependencies between Tasks.

Parameters
schedule(I) The schedule in which to create the Dependencies
numCreate(I) The number of Dependencies being created
createInputs(I) The inputs needed to create the Dependencies
createdDependencies(0F) numCreate The created Dependency Tags
numUpdatedTasks(0) The number of updated Tasks
updatedTasks(0F) numUpdatedTasks The list of updated Tasks
SCHMGTBRI_API int SCHMGT_create_dependency2 ( tag_t  schedule,
int  numCreate,
DependencyCreate_t createInputs,
tag_t **  createdDependencies,
int *  numUpdatedTasks,
tag_t **  updatedTasks,
int *  numProxyCreated,
tag_t **  createdProxies 
)

Creates Dependencies between Tasks.

Parameters
schedule(I) The Schedule in which to create the Dependencies
numCreate(I) The number of Dependencies being created
createInputs(I) numCreate Containers to create the Dependencies
createdDependencies(OF) numCreate Tags for the created Dependencies
numUpdatedTasks(O) The number of updated Tasks
updatedTasks(OF) numUpdatedTasks Tags of the updated Tasks
numProxyCreated(O) The number of created proxy Tasks
createdProxies(OF) numProxyCreated Tags of the created proxy Tasks
SCHMGTBRI_API int SCHMGT_create_tasks_non_interactive ( const tag_t schedule,
int  numCreate,
TaskCreateContainer_t createInputs,
tag_t **  createdTasks,
int *  numUpdated,
tag_t **  updatedTasks 
)

Creates Tasks in the Schedule.

Parameters
schedule(I) The Schedule tag which is been updated
numCreate(I) Number of Tasks to create
createInputs(I) numCreate Containers to create the Tasks
createdTasks(OF) numCreate Tags of the created Tasks
numUpdated(O) Number of Tasks updated
updatedTasks(OF) numUpdated Tags of the updated Tasks
SCHMGTBRI_API int SCHMGT_critical_tasks ( tag_t  schedule,
int *  numTask,
tag_t **  criticalTasks,
int *  numProxyTask,
tag_t **  criticalProxyTasks 
)

Calculates the critical path of the Schedule.

Parameters
schedule(I) The Schedule from which to calculate the critical path
numTask(O) The number of Tasks in the critical path
criticalTasks(OF) numTask Tags of the Tasks in the critical path
numProxyTask(O) The number of proxy Tasks in the critical path
criticalProxyTasks(OF) numProxyTask Tags of the proxy Tasks in the critical path
SCHMGTBRI_API int SCHMGT_delete_assignments ( tag_t  schedule,
int  numDelete,
tag_t assignments 
)

Deletes Resource Assignments in the Schedule.

Parameters
schedule(I) The Schedule in which to delete the dependencies
numDelete(I) The number of dependencies to delete
assignments(I) numDelete Tags of the Assignments to delete
SCHMGTBRI_API int SCHMGT_delete_dependency ( tag_t  schedule,
int  numDelete,
tag_t **  dependencies,
int *  numUpdatedTasks,
tag_t **  updatedTasks 
)

Deletes Dependencies in the Schedule.

Parameters
schedule(I) The Schedule in which to delete the Dependencies
numDelete(I) The number of Dependencies to delete
dependencies(I) numDelete Tags of the Dependencies to delete
numUpdatedTasks(O) The number of updated Tasks
updatedTasks(OF) numUpdatedTasks Tags of the updated Tasks
SCHMGTBRI_API int SCHMGT_delete_tasks_non_interactive ( tag_t  schedule,
int  numTasksToDelete,
tag_t tasksToDelete,
int *  numUpdatedTasks,
tag_t **  updatedTasks,
int *  numOrphanedTasks,
tag_t **  orphanedTasks 
)

Deletes Tasks in the Schedule.

Parameters
schedule(I) The Schedule tag
numTasksToDelete(I) Number of Tasks to delete
tasksToDelete(I) numTasksToDelete Tags of the Tasks to delete
numUpdatedTasks(O) Number of Tasks updated
updatedTasks(OF) numUpdatedTasks Tags of the updated Tasks
numOrphanedTasks(O) Number of Tasks orphaned
orphanedTasks(OF) numOrphanedTasks Tags of the orphaned Tasks
SCHMGTBRI_API int SCHMGT_generate_unique_task_id ( char **  unique_task_id)

Generates unique task ID.
This ID will be used for creation of dispatcher task.

Returns
  • ITK_ok on success.
  • #DISPATCHER_ERROR_unable_to_obtain_host_information if dispatcher could not find the host information of machine.
Parameters
unique_task_id(OF) Generated unique task id
SCHMGTBRI_API int SCHMGT_launch_workflow ( tag_t  task,
tag_t epmJob 
)

Launches the workflow on Task.

Parameters
task(I) The Task for launch workflow
epmJob(OF) The launched EPM Job
SCHMGTBRI_API int SCHMGT_move_tasks_non_interactive ( const tag_t schedule,
int  numTaskToMove,
MoveRequest_t updateInputs 
)

Moves Tasks within the Schedule.

Parameters
schedule(I) The Schedule in which the Tasks are to be updated
numTaskToMove(I) The number of Tasks to move
updateInputs(I) numTaskToMove Inputs for move
SCHMGTBRI_API int SCHMGT_recalculate_schedule_non_interactive ( tag_t  schedule,
int  type,
logical  async 
)

Performs the recalculation operation on the Schedule.

Parameters
schedule(I) The tag of the Schedule being updated
type(I) The type of recalculation: RECALCULATE_EXEC, RECALCULATE_SCHED, RECALCULATE_ALL
async(I) Schedule the recalculation in the background
SCHMGTBRI_API int SCHMGT_scale_schedule_non_interactive ( tag_t  schedule,
double  factor,
int  type,
logical  checkState,
int *  numUpdatedTasks,
tag_t **  updatedTasks 
)

Performs the scale Schedule operation on the Schedule.

Parameters
schedule(I) The tag of the Schedule to scale
factor(I) The value of the factor by which to scale
type(I) The type of scale: 0-Work Estimate, 1-Duration
checkState(I) True: the operation will fail if the schedule has started. False: the operation will attempt to scale a started schedule.
numUpdatedTasks(O) The number of updated Tasks
updatedTasks(OF) numUpdatedTasks Tags of the updated Tasks
SCHMGTBRI_API int SCHMGT_shift_schedule_non_interactive ( tag_t  schedule,
date_t  newDate,
logical  newFinish,
int *  numUpdatedTasks,
tag_t **  updatedTasks 
)

Performs the shift operation on the Schedule.

Parameters
schedule(I) The tag of the Schedule to shift
newDate(I) The new date
newFinish(I) True: newDate is the new finish date. False: newDate is the new start date.
numUpdatedTasks(O) The number of updated Tasks
updatedTasks(OF) numUpdatedTasks Tags of the updated Tasks
SCHMGTBRI_API int SCHMGT_update_assignments ( const tag_t schedule,
int  numUpdate,
AssignmentUpdate_t updateInputs,
int *  numUpdatedAssignments,
tag_t **  updatedAssignments 
)

Updates Resource Assignments in the Schedule.

Parameters
schedule(I) The Schedule tag
numUpdate(I) Number of Assignments to update
updateInputs(I) numUpdate Containers to update the Assignments
numUpdatedAssignments(O) The number of updated Assignments
updatedAssignments(OF) numUpdatedAssignments Tags of the updated Assignments
SCHMGTBRI_API int SCHMGT_update_dependency ( tag_t  schedule,
int  numUpdate,
DependencyUpdate_t updateInputs,
int *  numUpdatedTasks,
tag_t **  updatedTasks 
)

Updates Dependencies in the Schedule.

Parameters
schedule(I) The Schedule in which to update the Dependencies
numUpdate(I) The number of Dependencies being updated
updateInputs(I) numUpdate Containers to update the Dependencies
numUpdatedTasks(O) The number of updated Tasks
updatedTasks(OF) numUpdatedTasks Tags of the updated Tasks
SCHMGTBRI_API int SCHMGT_update_schedule_non_interactive ( ObjectUpdateContainer_t  update,
int *  numUpdatedTasks,
tag_t **  updatedTasks 
)

Updates the Schedule.

Parameters
update(I) The Schedule to update
numUpdatedTasks(O) The number of updated Tasks
updatedTasks(OF) numUpdatedTasks Tags of the updated Tasks
SCHMGTBRI_API int SCHMGT_update_tasks_non_interactive ( const tag_t schedule,
int  numTasksToUpdate,
ObjectUpdateContainer_t updateInputs,
int *  numUpdated,
tag_t **  updatedTasks 
)

Updates Tasks in the Schedule.

Parameters
schedule(I) The Schedule in which the Tasks are to be updated
numTasksToUpdate(I) The number of Tasks to update
updateInputs(I) numTasksToUpdate Containers to update the Tasks
numUpdated(O) Number of Tasks updated
updatedTasks(OF) numUpdated Tags of the updated Tasks