GridLab
Grid Application Toolkit

A simple API for Grid Applications
GAT

Menu



Main Page   Alphabetical List   Compound List   File List   Compound Members   File Members  

GATJobCPI.h File Reference

Header file for the GATJobCPI class. More...

#include "GATContext.h"
#include "GATPreferences.h"
#include "GATMonitorable.h"

Include dependency graph for GATJobCPI.h:

Include dependency graph

This graph shows which files directly or indirectly include this file:

Included by dependency graph

Go to the source code of this file.

Compounds

struct  GATJobCPI_Instance
 The #GATJobCPI_Instance structure holds all data items supplied by the client during the construction of the corresponding GAT object. More...

struct  GATJobCPI_Data

Defines

#define _GATJOBCPI_H_
#define GATJOBCPI_VERSION1   1
#define GATJOBCPI_VERSION   GATJOBCPI_VERSION1

Typedefs

typedef GATJobCPI_SGATJobCPI
typedef void(* GATJobCPI_Adaptor_Destroy )(void *)
typedef GATResult(* GATJobCPI_Adaptor_ServiceActions )(void *, GATJobCPI_Instance *, GATTimePeriod_const)
typedef void(* GATJobCPI_Adaptor_DestroyInstance )(void *, GATJobCPI_Instance *)
typedef GATResult(* GATJobCPI_Adaptor_CreateInstance )(void *, GATJobCPI_Instance *, void *)
typedef GATResult(* GATJobCPI_Adaptor_CloneInstance )(void *, GATJobCPI_Instance const *, GATJobCPI_Instance *)
typedef GATResult(* GATJobCPI_Adaptor_EqualsInstance )(void *, GATJobCPI_Instance const *, GATJobCPI_Instance const *, GATBool *)
typedef GATResult(* GATJobCPI_Adaptor_UnSchedule )(void *, GATJobCPI_Instance const *)
typedef GATResult(* GATJobCPI_Adaptor_Checkpoint )(void *, GATJobCPI_Instance const *)
typedef GATResult(* GATJobCPI_Adaptor_CloneJob )(void *, GATJobCPI_Instance const *, GATHardwareResource_const, GATJob *)
typedef GATResult(* GATJobCPI_Adaptor_Migrate )(void *, GATJobCPI_Instance const *, GATHardwareResource_const, GATJob *)
typedef GATResult(* GATJobCPI_Adaptor_Stop )(void *, GATJobCPI_Instance const *)
typedef GATResult(* GATJobCPI_Adaptor_GetJobDescription )(void *, GATJobCPI_Instance const *, GATJobDescription_const *jd)
typedef GATResult(* GATJobCPI_Adaptor_GetInfo )(void *, GATJobCPI_Instance const *, GATTable_const *jobinfo)
typedef GATResult(* GATJobCPI_Adaptor_GetJobID )(void *, GATJobCPI_Instance const *, GATJobID_const *jobid)
typedef GATResult(* GATJobCPI_Adaptor_GetStatus )(void *, GATJobCPI_Instance const *, GATStatus_const *jobstatus)
typedef GATResult(* GATJobCPI_Adaptor_GetMetrics )(void *, GATJobCPI_Instance const *, GATList_GATMetric *)
typedef GATResult(* GATJobCPI_Adaptor_GetMetricEvent )(void *, GATJobCPI_Instance const *, GATMetric, GATMetricEvent *)
typedef GATResult(* GATJobCPI_Adaptor_Serialise )(void *, GATJobCPI_Instance const *, GATObject, GATBool)
typedef GATResult(* GATJobCPI_Adaptor_DeSerialise )(void *, GATObject, GATJobCPI_Instance *)

Functions

GATJobCPI GATJobCPI_Create (unsigned long int version, GATJobCPI_Data *data)
 GATJobCPI_Create The GATJobCPI constructor.

void GATJobCPI_Destroy (GATJobCPI *cpi)
 GATJobCPI_Destroy The GATJobCPI destructor.

GATResult GATJobCPI_CreateInstance (GATJobCPI cpi, GATJobCPI_Instance *instance_data, void *initialisation_data)
 GATJobCPI_CreateInstance Create a new CPI object instance.

void GATJobCPI_DestroyInstance (GATJobCPI cpi, GATJobCPI_Instance *instance_data)
 GATJobCPI_DestroyInstance Create a new CPI object instance.

GATResult GATJobCPI_EqualsInstance (GATJobCPI cpi, GATJobCPI_Instance const *lhs, GATJobCPI_Instance const *rhs, GATBool *isequal)
 GATJobCPI_EqualsInstance Compares two CPI object instances.

GATResult GATJobCPI_CloneInstance (GATJobCPI cpi, GATJobCPI_Instance const *instance_data, GATJobCPI_Instance *new_instance_data)
 GATJobCPI_CloneInstance Clones a CPI object instance.

GATResult GATJobCPI_GetMetrics (GATJobCPI cpi, GATJobCPI_Instance const *data, GATList_GATMetric *metrics)
 GATJobCPI_GetMetrics.

GATResult GATJobCPI_GetMetricEvent (GATJobCPI cpi, GATJobCPI_Instance const *data, GATMetric metric, GATMetricEvent *event)
 GATJobCPI_GetMetricEvent.

GATResult GATJobCPI_Serialise (GATJobCPI cpi, GATJobCPI_Instance const *data, GATObject stream, GATBool clear_dirty)
 GATJobCPI_Serialise Serialise the instance data.

GATResult GATJobCPI_DeSerialise (GATJobCPI cpi, GATObject stream, GATJobCPI_Instance *data)
 GATJobCPI_DeSerialise De-serialise the instance data.

GATResult GATJobCPI_UnSchedule (GATJobCPI cpi, GATJobCPI_Instance const *data)
GATResult GATJobCPI_Checkpoint (GATJobCPI cpi, GATJobCPI_Instance const *data)
GATResult GATJobCPI_CloneJob (GATJobCPI cpi, GATJobCPI_Instance const *data, GATHardwareResource_const hr, GATJob *cloned_job)
GATResult GATJobCPI_Migrate (GATJobCPI cpi, GATJobCPI_Instance const *data, GATHardwareResource_const hr, GATJob *migrated_job)
GATResult GATJobCPI_Stop (GATJobCPI cpi, GATJobCPI_Instance const *data)
GATResult GATJobCPI_GetJobDescription (GATJobCPI cpi, GATJobCPI_Instance const *data, GATJobDescription_const *jd)
GATResult GATJobCPI_GetInfo (GATJobCPI cpi, GATJobCPI_Instance const *data, GATTable_const *jobinfo)
GATResult GATJobCPI_GetJobID (GATJobCPI cpi, GATJobCPI_Instance const *data, GATJobID_const *jobid)
GATResult GATJobCPI_GetStatus (GATJobCPI cpi, GATJobCPI_Instance const *data, GATStatus_const *jobstatus)


Detailed Description

Header file for the GATJobCPI class.

Date:
Sat Oct 25 2003
Version:
Header:
/export/cvs-gridlab/wp-1/Codes/GATEngine/C-reference/src/GATJobCPI.h,v 1.12 2004/03/24 19:30:58 hartmutkaiser Exp

Copyright (C) Hartmut Kaiser This file is part of the GAT Engine. Contributed by Hartmut Kaiser <hartmutkaiser [at] t-online [dot] de>.

Use, modification and distribution is subject to the Gridlab Software License. (See accompanying file GLlicense.txt or copy at http://www.gridlab.org/GLlicense.txt)

Definition in file GATJobCPI.h.


Define Documentation

#define _GATJOBCPI_H_
 

Definition at line 18 of file GATJobCPI.h.

#define GATJOBCPI_VERSION1   1
 

Definition at line 27 of file GATJobCPI.h.

#define GATJOBCPI_VERSION   GATJOBCPI_VERSION1
 

Definition at line 30 of file GATJobCPI.h.

Referenced by GATJobCPI_Create(), and resourcebroker_adaptor_Register_GATJobCPI().


Typedef Documentation

typedef struct GATJobCPI_S* GATJobCPI
 

Definition at line 20 of file GATJobCPI.h.

typedef void(* GATJobCPI_Adaptor_Destroy)(void *)
 

Definition at line 49 of file GATJobCPI.h.

typedef GATResult(* GATJobCPI_Adaptor_ServiceActions)(void *, GATJobCPI_Instance *, GATTimePeriod_const)
 

Definition at line 51 of file GATJobCPI.h.

typedef void(* GATJobCPI_Adaptor_DestroyInstance)(void *, GATJobCPI_Instance *)
 

Definition at line 55 of file GATJobCPI.h.

typedef GATResult(* GATJobCPI_Adaptor_CreateInstance)(void *, GATJobCPI_Instance *, void *)
 

Definition at line 58 of file GATJobCPI.h.

typedef GATResult(* GATJobCPI_Adaptor_CloneInstance)(void *, GATJobCPI_Instance const *, GATJobCPI_Instance *)
 

Definition at line 61 of file GATJobCPI.h.

typedef GATResult(* GATJobCPI_Adaptor_EqualsInstance)(void *, GATJobCPI_Instance const *, GATJobCPI_Instance const *, GATBool *)
 

Definition at line 64 of file GATJobCPI.h.

typedef GATResult(* GATJobCPI_Adaptor_UnSchedule)(void *, GATJobCPI_Instance const *)
 

Definition at line 70 of file GATJobCPI.h.

typedef GATResult(* GATJobCPI_Adaptor_Checkpoint)(void *, GATJobCPI_Instance const *)
 

Definition at line 73 of file GATJobCPI.h.

typedef GATResult(* GATJobCPI_Adaptor_CloneJob)(void *, GATJobCPI_Instance const *, GATHardwareResource_const, GATJob *)
 

Definition at line 76 of file GATJobCPI.h.

typedef GATResult(* GATJobCPI_Adaptor_Migrate)(void *, GATJobCPI_Instance const *, GATHardwareResource_const, GATJob *)
 

Definition at line 79 of file GATJobCPI.h.

typedef GATResult(* GATJobCPI_Adaptor_Stop)(void *, GATJobCPI_Instance const *)
 

Definition at line 82 of file GATJobCPI.h.

typedef GATResult(* GATJobCPI_Adaptor_GetJobDescription)(void *, GATJobCPI_Instance const *, GATJobDescription_const *jd)
 

Definition at line 85 of file GATJobCPI.h.

typedef GATResult(* GATJobCPI_Adaptor_GetInfo)(void *, GATJobCPI_Instance const *, GATTable_const *jobinfo)
 

Definition at line 88 of file GATJobCPI.h.

typedef GATResult(* GATJobCPI_Adaptor_GetJobID)(void *, GATJobCPI_Instance const *, GATJobID_const *jobid)
 

Definition at line 91 of file GATJobCPI.h.

typedef GATResult(* GATJobCPI_Adaptor_GetStatus)(void *, GATJobCPI_Instance const *, GATStatus_const *jobstatus)
 

Definition at line 94 of file GATJobCPI.h.

typedef GATResult(* GATJobCPI_Adaptor_GetMetrics)(void *, GATJobCPI_Instance const *, GATList_GATMetric *)
 

Definition at line 99 of file GATJobCPI.h.

typedef GATResult(* GATJobCPI_Adaptor_GetMetricEvent)(void *, GATJobCPI_Instance const *, GATMetric, GATMetricEvent *)
 

Definition at line 102 of file GATJobCPI.h.

typedef GATResult(* GATJobCPI_Adaptor_Serialise)(void *, GATJobCPI_Instance const *, GATObject, GATBool)
 

Definition at line 107 of file GATJobCPI.h.

typedef GATResult(* GATJobCPI_Adaptor_DeSerialise)(void *, GATObject, GATJobCPI_Instance *)
 

Definition at line 110 of file GATJobCPI.h.


Function Documentation

GATJobCPI GATJobCPI_Create unsigned long int    version,
GATJobCPI_Data   data
 

GATJobCPI_Create The GATJobCPI constructor.

new_cpi is the constructor for GATJobCPI objects.

Parameters:
version  Version of the GATJobCPI_Data structure
data  Pointer to adaptor CPI instance data structure.
Returns:
A new GATJobCPI

Definition at line 81 of file GATJobCPI.c.

References GATJobCPI_Data::checkpoint, GATJobCPI_S::checkpoint, GATJobCPI_Data::clone_instance, GATJobCPI_S::clone_instance, GATJobCPI_Data::clonejob, GATJobCPI_S::clonejob, GATJobCPI_Data::create_instance, GATJobCPI_S::create_instance, GATJobCPI_Data::data, GATJobCPI_S::data, data, GATJobCPI_Data::deserialise, GATJobCPI_S::deserialise, GATJobCPI_Data::destroy, GATJobCPI_S::destroy, GATJobCPI_Data::destroy_instance, GATJobCPI_S::destroy_instance, GATJobCPI_Data::equals_instance, GATJobCPI_S::equals_instance, GATJobCPI_IsValidData_V1(), GATJOBCPI_VERSION, GATTrue, GATJobCPI_Data::get_jobdescription, GATJobCPI_S::get_jobdescription, GATJobCPI_Data::get_jobid, GATJobCPI_S::get_jobid, GATJobCPI_Data::get_jobinfo, GATJobCPI_S::get_jobinfo, GATJobCPI_Data::get_metric_event, GATJobCPI_S::get_metric_event, GATJobCPI_Data::get_metrics, GATJobCPI_S::get_metrics, GATJobCPI_Data::get_status, GATJobCPI_S::get_status, GATJobCPI_Data::migratejob, GATJobCPI_S::migratejob, GATJobCPI_Data::serialise, GATJobCPI_S::serialise, GATJobCPI_Data::service_actions, GATJobCPI_S::service_actions, GATJobCPI_Data::stopjob, GATJobCPI_S::stopjob, GATJobCPI_Data::unschedule, and GATJobCPI_S::unschedule.

Referenced by resourcebroker_adaptor_Register_GATJobCPI().

void GATJobCPI_Destroy GATJobCPI   object
 

GATJobCPI_Destroy The GATJobCPI destructor.

This is the destructor for GATJobCPI objects.

Parameters:
this  An old GATJobCPI

Definition at line 150 of file GATJobCPI.c.

Referenced by resourcebroker_adaptor_Register_GATJobCPI().

GATResult GATJobCPI_CreateInstance GATJobCPI    cpi,
GATJobCPI_Instance   instance_data,
void *    initialisation_data
 

GATJobCPI_CreateInstance Create a new CPI object instance.

Calls the adaptor to create a new CPI object instance.

Parameters:
this  The CPI object.
context  a GATContext
instance_data  The instance data of the attached CPI object
Returns:
An error code.

Definition at line 173 of file GATJobCPI.c.

References cpi, GATJobCPI_S::create_instance, and GATJobCPI_S::data.

Referenced by GATJob_Create().

void GATJobCPI_DestroyInstance GATJobCPI    cpi,
GATJobCPI_Instance   instance_data
 

GATJobCPI_DestroyInstance Create a new CPI object instance.

Calls the adaptor to destroy a CPI object instance.

Parameters:
this  The CPI object.
instance_data  The instance data of the attached CPI object

Definition at line 188 of file GATJobCPI.c.

References cpi, GATJobCPI_S::data, and GATJobCPI_S::destroy_instance.

Referenced by GATJob_Destroy().

GATResult GATJobCPI_EqualsInstance GATJobCPI    cpi,
GATJobCPI_Instance const *    lhs,
GATJobCPI_Instance const *    rhs,
GATBool   isequal
 

GATJobCPI_EqualsInstance Compares two CPI object instances.

Calls the adaptor to compare two CPI object instances.

Parameters:
this  The CPI object.
lhs  The instance data of the left CPI object
rhs  The instance data of the right CPI object
isequal  The pointer to the variable, where the result is to be returned to.
Returns:
An error code.

Definition at line 208 of file GATJobCPI.c.

References cpi, GATJobCPI_S::data, GATJobCPI_S::equals_instance, and GATBool.

Referenced by GATJob_Equals().

GATResult GATJobCPI_CloneInstance GATJobCPI    cpi,
GATJobCPI_Instance const *    instance_data,
GATJobCPI_Instance   new_instance_data
 

GATJobCPI_CloneInstance Clones a CPI object instance.

Calls the adaptor to clone a CPI object instance.

Parameters:
this  The CPI object.
instance_data  The instance data of the CPI object to clone.
new_instance_data  The new instance data is to be returned here.
Returns:
An error code.

Definition at line 227 of file GATJobCPI.c.

References GATJobCPI_S::clone_instance, cpi, and GATJobCPI_S::data.

Referenced by GATJob_Clone().

GATResult GATJobCPI_GetMetrics GATJobCPI    cpi,
GATJobCPI_Instance const *    data,
GATList_GATMetric *    metrics
 

GATJobCPI_GetMetrics.

The function GATJobCPI_GetMetrics returns the list of metrics supported by this adaptor.

Parameters:
cpi  The CPI object.
instance_data  The instance data of the attached CPI object
The  pointer to the variable, which receives the resulting list of metrics.
Returns:
An error code.

Definition at line 248 of file GATJobCPI.c.

References cpi, GATJobCPI_S::data, data, and GATJobCPI_S::get_metrics.

Referenced by GATJob_Create(), and GATJob_DeSerialise_Create().

GATResult GATJobCPI_GetMetricEvent GATJobCPI    cpi,
GATJobCPI_Instance const *    data,
GATMetric    metric,
GATMetricEvent   event
 

GATJobCPI_GetMetricEvent.

The function GATJobCPI_GetMetricEvent returns the metric event, which is associated with the given metric.

Parameters:
cpi  The CPI object.
instance_data  The instance data of the attached CPI object
metric  The continuous metric, for which the metric event is to be returned.
event  The pointer to the variable, which receives the resulting metric event.
Returns:
An error code.

Definition at line 269 of file GATJobCPI.c.

References cpi, GATJobCPI_S::data, data, GATMetric, and GATJobCPI_S::get_metric_event.

Referenced by GATJob_RegisterPolling().

GATResult GATJobCPI_Serialise GATJobCPI    cpi,
GATJobCPI_Instance const *    data,
GATObject    stream,
GATBool    clear_dirty
 

GATJobCPI_Serialise Serialise the instance data.

Calls the adaptor to serialise the instance data.

Parameters:
this  The CPI object.
instance_data  The instance data of the attached CPI object
stream  The stream to use be used for serialisation.
clear_dirty  If the clear_dirty parameter is set to GATTrue, the internal dirty flag of this object is to be reset.
Returns:
An error code.

Definition at line 290 of file GATJobCPI.c.

References cpi, GATJobCPI_S::data, data, GATBool, and GATJobCPI_S::serialise.

Referenced by GATJobCPI_SerialiseCallback().

GATResult GATJobCPI_DeSerialise GATJobCPI    cpi,
GATObject    stream,
GATJobCPI_Instance   data
 

GATJobCPI_DeSerialise De-serialise the instance data.

Call the adaptor to de-serialise the instance data.

Parameters:
context  The GAT context to be used for object construction.
stream  The stream interface to use for the serialisation.
instance_data  The pointer to a variable, which contains the client data of the new object. The member instance data of this object may receive the pointer to the new instance data of the CPI object.
Returns:
An error code.

Definition at line 310 of file GATJobCPI.c.

References cpi, GATJobCPI_S::data, data, and GATJobCPI_S::deserialise.

Referenced by GATJob_DeSerialise_Create().

GATResult GATJobCPI_UnSchedule GATJobCPI    cpi,
GATJobCPI_Instance const *    data
 

Definition at line 322 of file GATJobCPI.c.

References cpi, GATJobCPI_S::data, data, and GATJobCPI_S::unschedule.

Referenced by GATJob_UnSchedule().

GATResult GATJobCPI_Checkpoint GATJobCPI    cpi,
GATJobCPI_Instance const *    data
 

Definition at line 331 of file GATJobCPI.c.

References GATJobCPI_S::checkpoint, cpi, GATJobCPI_S::data, and data.

Referenced by GATJob_Checkpoint().

GATResult GATJobCPI_CloneJob GATJobCPI    cpi,
GATJobCPI_Instance const *    data,
GATHardwareResource_const    hr,
GATJob   cloned_job
 

Definition at line 340 of file GATJobCPI.c.

References GATJobCPI_S::clonejob, cpi, GATJobCPI_S::data, data, GATHardwareResource_const, and GATJob.

Referenced by GATJob_CloneJob().

GATResult GATJobCPI_Migrate GATJobCPI    cpi,
GATJobCPI_Instance const *    data,
GATHardwareResource_const    hr,
GATJob   migrated_job
 

Definition at line 350 of file GATJobCPI.c.

References cpi, GATJobCPI_S::data, data, GATHardwareResource_const, GATJob, and GATJobCPI_S::migratejob.

Referenced by GATJob_Migrate().

GATResult GATJobCPI_Stop GATJobCPI    cpi,
GATJobCPI_Instance const *    data
 

Definition at line 360 of file GATJobCPI.c.

References cpi, GATJobCPI_S::data, data, and GATJobCPI_S::stopjob.

Referenced by GATJob_Stop().

GATResult GATJobCPI_GetJobDescription GATJobCPI    cpi,
GATJobCPI_Instance const *    data,
GATJobDescription_const   jd
 

Definition at line 369 of file GATJobCPI.c.

References cpi, GATJobCPI_S::data, data, GATJobDescription_const, and GATJobCPI_S::get_jobdescription.

Referenced by GATJob_GetJobDescription().

GATResult GATJobCPI_GetInfo GATJobCPI    cpi,
GATJobCPI_Instance const *    data,
GATTable_const   jobinfo
 

Definition at line 379 of file GATJobCPI.c.

References cpi, GATJobCPI_S::data, data, GATTable_const, and GATJobCPI_S::get_jobinfo.

Referenced by GATJob_GetInfo().

GATResult GATJobCPI_GetJobID GATJobCPI    cpi,
GATJobCPI_Instance const *    data,
GATJobID_const   jobid
 

Definition at line 389 of file GATJobCPI.c.

References cpi, GATJobCPI_S::data, data, GATJobID_const, and GATJobCPI_S::get_jobid.

GATResult GATJobCPI_GetStatus GATJobCPI    cpi,
GATJobCPI_Instance const *    data,
GATStatus_const   jobstatus
 

Definition at line 399 of file GATJobCPI.c.

References cpi, GATJobCPI_S::data, data, GATStatus_const, and GATJobCPI_S::get_status.

Referenced by GATJob_GetStatus().