hs-mesos-0.20.0.2: ext/scheduler.h
#include <mesos/scheduler.hpp>
typedef mesos::Scheduler *SchedulerPtr;
typedef mesos::SchedulerDriver *SchedulerDriverPtr;
typedef const mesos::FrameworkID *FrameworkIDPtr;
typedef const mesos::MasterInfo *MasterInfoPtr;
typedef const mesos::Offer *OfferPtr;
typedef const mesos::OfferID *OfferIDPtr;
typedef const mesos::TaskStatus *TaskStatusPtr;
typedef const mesos::SlaveID *SlaveIDPtr;
typedef const mesos::ExecutorID *ExecutorIDPtr;
typedef mesos::FrameworkInfo *FrameworkInfoPtr;
typedef mesos::Credential *CredentialPtr;
typedef mesos::Filters *FiltersPtr;
typedef mesos::Request *RequestPtr;
typedef mesos::TaskInfo *TaskInfoPtr;
typedef mesos::TaskID *TaskIDPtr;
typedef void OnSchedulerRegisteredCallback(SchedulerDriverPtr,
const FrameworkIDPtr,
const MasterInfoPtr);
typedef void OnSchedulerReRegisteredCallback(SchedulerDriverPtr,
const MasterInfoPtr);
typedef void OnSchedulerDisconnectedCallback(SchedulerDriverPtr);
typedef void OnSchedulerResourceOffers(SchedulerDriverPtr,
const OfferPtr*,
int);
typedef void OnOfferRescinded(SchedulerDriverPtr,
const OfferIDPtr);
typedef void OnStatusUpdate(SchedulerDriverPtr,
const TaskStatusPtr);
typedef void OnFrameworkMessage(SchedulerDriverPtr,
const ExecutorIDPtr,
const SlaveIDPtr,
const char*,
int);
typedef void OnSlaveLost(SchedulerDriverPtr,
const SlaveIDPtr);
typedef void OnExecutorLost(SchedulerDriverPtr,
const ExecutorIDPtr,
const SlaveIDPtr,
int status);
typedef void OnSchedulerError(SchedulerDriverPtr,
const char*,
int);
extern "C" {
extern SchedulerPtr createScheduler(OnSchedulerRegisteredCallback*,
OnSchedulerReRegisteredCallback*,
OnSchedulerDisconnectedCallback*,
OnSchedulerResourceOffers*,
OnOfferRescinded*,
OnStatusUpdate*,
OnFrameworkMessage*,
OnSlaveLost*,
OnExecutorLost*,
OnSchedulerError*);
extern void destroyScheduler(SchedulerPtr);
extern void exerciseMethods(SchedulerPtr);
extern SchedulerDriverPtr createSchedulerDriver(
SchedulerPtr,
FrameworkInfoPtr,
char*,
int);
extern SchedulerDriverPtr createSchedulerDriverWithCredentials(
SchedulerPtr,
FrameworkInfoPtr,
char*,
int,
CredentialPtr);
extern void destroySchedulerDriver(SchedulerDriverPtr);
extern int startSchedulerDriver(SchedulerDriverPtr);
extern int stopSchedulerDriver(SchedulerDriverPtr, bool failover);
extern int abortSchedulerDriver(SchedulerDriverPtr);
extern int joinSchedulerDriver(SchedulerDriverPtr);
extern int runSchedulerDriver(SchedulerDriverPtr);
extern int requestResources(SchedulerDriverPtr, RequestPtr*, int);
extern int launchTasks(SchedulerDriverPtr,
OfferIDPtr*,
int,
TaskInfoPtr*,
int,
FiltersPtr);
extern int killTask(SchedulerDriverPtr, TaskIDPtr);
extern int declineOffer(SchedulerDriverPtr,
OfferIDPtr,
FiltersPtr);
extern int reviveOffers(SchedulerDriverPtr);
extern int schedulerDriverSendFrameworkMessage(SchedulerDriverPtr,
ExecutorIDPtr,
SlaveIDPtr,
char*,
int);
extern int reconcileTasks(SchedulerDriverPtr,
TaskStatusPtr*,
int);
}