/* This file is generated by aisc_mkpt.
 * Any changes you make here will be overwritten later!
 */

#ifndef SERVERCNTRL_H
#define SERVERCNTRL_H


/* servercntrl.cxx */

#ifndef ARBDB_BASE_H
#include <arbdb_base.h>
#endif

struct arb_params {
    char *species_name;
    char *extended_name;
    char *alignment;
    char *default_file;
    char *field;
    const char *field_default;

    int  read_only;

    char *job_server;
    char *db_server;
    char *mgr_server;
    char *pt_server;

    char *tcp;
};

enum SpawnMode {
    WAIT_FOR_TERMINATION,
    SPAWN_ASYNCHRONOUS,
    SPAWN_DAEMONIZED,
};

char *createCallOnSocketHost(const char *host, const char *remotePrefix, const char *command, SpawnMode spawnmode, const char *logfile);
GB_ERROR arb_start_server(const char *arb_tcp_env, int do_sleep);
GB_ERROR arb_look_and_start_server(long magic_number, const char *arb_tcp_env);
GB_ERROR arb_look_and_kill_server(int magic_number, const char *arb_tcp_env);
const char *arb_look_and_start_ptserver(int magic_number, int ptserver_id, GB_ERROR& error);
void arb_print_server_params(void);
arb_params *arb_trace_argv(int *argc, const char **argv);
void free_arb_params(arb_params *params);

#else
#error servercntrl.h included twice
#endif /* SERVERCNTRL_H */
