/* Generated from volumeserver.xg */
#ifndef _VOLUMESERVER_
#define _VOLUMESERVER_

#include <atypes.h>
#include <rx/rx.h>
#include <rx/rx_null.h>
#ifdef HAVE_STDS_H
#include <stds.h>
#endif
#define VLDB_MAXSERVER 80

#define VLDB_MAXSERVER_SIZE 0
#define VOLSERVICE_PORT 7005

#define VOLSERVICE_PORT_SIZE 0
#define VOLSERVICE_ID 4

#define VOLSERVICE_ID_SIZE 0
#define INVALID_BID 0

#define INVALID_BID_SIZE 0
#define VOLSER_MAXVOLNAME 65

#define VOLSER_MAXVOLNAME_SIZE 0
#define VOLSER_OLDMAXVOLNAME 32

#define VOLSER_OLDMAXVOLNAME_SIZE 0
#define VOLSER_MAX_REPSITES 7

#define VOLSER_MAX_REPSITES_SIZE 0
#define VNAMESIZE 32

#define VNAMESIZE_SIZE 0
#define VOLCREATEVOLUME 100

#define VOLCREATEVOLUME_SIZE 0
#define VOLDELETEVOLUME 101

#define VOLDELETEVOLUME_SIZE 0
#define VOLRESTORE 102

#define VOLRESTORE_SIZE 0
#define VOLFORWARD 103

#define VOLFORWARD_SIZE 0
#define VOLENDTRANS 104

#define VOLENDTRANS_SIZE 0
#define VOLCLONE 105

#define VOLCLONE_SIZE 0
#define VOLSETFLAGS 106

#define VOLSETFLAGS_SIZE 0
#define VOLGETFLAGS 107

#define VOLGETFLAGS_SIZE 0
#define VOLTRANSCREATE 108

#define VOLTRANSCREATE_SIZE 0
#define VOLDUMP 109

#define VOLDUMP_SIZE 0
#define VOLGETNTHVOLUME 110

#define VOLGETNTHVOLUME_SIZE 0
#define VOLSETFORWARDING 111

#define VOLSETFORWARDING_SIZE 0
#define VOLGETNAME 112

#define VOLGETNAME_SIZE 0
#define VOLGETSTATUS 113

#define VOLGETSTATUS_SIZE 0
#define VOLSIGRESTORE 114

#define VOLSIGRESTORE_SIZE 0
#define VOLLISTPARTITIONS 115

#define VOLLISTPARTITIONS_SIZE 0
#define VOLLISTVOLS 116

#define VOLLISTVOLS_SIZE 0
#define VOLSETIDTYPES 117

#define VOLSETIDTYPES_SIZE 0
#define VOLMONITOR 118

#define VOLMONITOR_SIZE 0
#define VOLDISKPART 119

#define VOLDISKPART_SIZE 0
#define VOLRECLOSE 120

#define VOLRECLOSE_SIZE 0
#define VOLLISTONEVOL 121

#define VOLLISTONEVOL_SIZE 0
#define VOLNUKE 122

#define VOLNUKE_SIZE 0
#define VOLSETDATE 123

#define VOLSETDATE_SIZE 0
#define PARTVALID 1

#define PARTVALID_SIZE 0
#define VOK 2

#define VOK_SIZE 0
#define VBUSY 110

#define VBUSY_SIZE 0
#define VOLSERTRELE_ERROR 1492325120

#define VOLSERTRELE_ERROR_SIZE 0
#define VOLSERNO_OP 1492325121

#define VOLSERNO_OP_SIZE 0
#define VOLSERREAD_DUMPERROR 1492325122

#define VOLSERREAD_DUMPERROR_SIZE 0
#define VOLSERDUMPERROR 1492325123

#define VOLSERDUMPERROR_SIZE 0
#define VOLSERATTACH_ERROR 1492325124

#define VOLSERATTACH_ERROR_SIZE 0
#define VOLSERILLEGAL_PARTITION 1492325125

#define VOLSERILLEGAL_PARTITION_SIZE 0
#define VOLSERDETACH_ERROR 1492325126

#define VOLSERDETACH_ERROR_SIZE 0
#define VOLSERBAD_ACCESS 1492325127

#define VOLSERBAD_ACCESS_SIZE 0
#define VOLSERVLDB_ERROR 1492325128

#define VOLSERVLDB_ERROR_SIZE 0
#define VOLSERBADNAME 1492325129

#define VOLSERBADNAME_SIZE 0
#define VOLSERVOLMOVED 1492325130

#define VOLSERVOLMOVED_SIZE 0
#define VOLSERBADOP 1492325131

#define VOLSERBADOP_SIZE 0
#define VOLSERBADRELEASE 1492325132

#define VOLSERBADRELEASE_SIZE 0
#define VOLSERVOLBUSY 1492325133

#define VOLSERVOLBUSY_SIZE 0
#define VOLSERNO_MEMORY 1492325134

#define VOLSERNO_MEMORY_SIZE 0
#define VOLSERNOVOL 1492325135

#define VOLSERNOVOL_SIZE 0
#define VOLSERMULTIRWVOL 1492325136

#define VOLSERMULTIRWVOL_SIZE 0
#define VOLSERFAILEDOP 1492325137

#define VOLSERFAILEDOP_SIZE 0
struct volser_trans {
     struct volser_trans *next;
     int32_t tid;
     int32_t time;
     int32_t creationTime;
     int32_t returnCode;
     int32_t volid;
     int32_t partition;
     int32_t dumpTransId;
     int32_t dumpSeq;
     int16_t refCount;
     int16_t iflags;
     char vflags;
     char tflags;
     char incremental;
     char lastProcName[ 30 ];
};
typedef struct volser_trans volser_trans;

char *ydr_encode_volser_trans(volser_trans *o, char *ptr);
char *ydr_decode_volser_trans(volser_trans *o, char *ptr);
struct volDescription {
     char volName[ 65 ];
     int32_t volId;
     int32_t volSize;
     int32_t volFlags;
     int32_t volCloneId;
};
typedef struct volDescription volDescription;

#define VOLDESCRIPTION_SIZE 276
char *ydr_encode_volDescription(volDescription *o, char *ptr);
char *ydr_decode_volDescription(volDescription *o, char *ptr);
struct partList {
     int32_t partId[ 26 ];
     int32_t partFlags[ 26 ];
};
typedef struct partList partList;

#define PARTLIST_SIZE 208
char *ydr_encode_partList(partList *o, char *ptr);
char *ydr_decode_partList(partList *o, char *ptr);
struct volser_status {
     int32_t volID;
     int32_t nextUnique;
     int32_t type;
     int32_t parentID;
     int32_t cloneID;
     int32_t backupID;
     int32_t restoredFromID;
     int32_t maxQuota;
     int32_t minQuota;
     int32_t owner;
     int32_t creationDate;
     int32_t accessDate;
     int32_t updateDate;
     int32_t exprirationDate;
     int32_t backupDate;
     int32_t copyDate;
};
typedef struct volser_status volser_status;

#define VOLSER_STATUS_SIZE 64
char *ydr_encode_volser_status(volser_status *o, char *ptr);
char *ydr_decode_volser_status(volser_status *o, char *ptr);
struct destServer {
     int32_t destHost;
     int32_t destPort;
     int32_t destSSID;
};
typedef struct destServer destServer;

#define DESTSERVER_SIZE 12
char *ydr_encode_destServer(destServer *o, char *ptr);
char *ydr_decode_destServer(destServer *o, char *ptr);
struct volintInfo {
     char name[ 32 ];
     int32_t volid;
     int32_t type;
     int32_t backupID;
     int32_t parentID;
     int32_t cloneID;
     int32_t status;
     int32_t copyDate;
     char inUse;
     char needsSalvaged;
     char destroyMe;
     int32_t creationDate;
     int32_t accessDate;
     int32_t updateDate;
     int32_t backupDate;
     int32_t dayUse;
     int32_t filecount;
     int32_t maxquota;
     int32_t size;
     int32_t flags;
     int32_t spare0;
     int32_t spare1;
     int32_t spare2;
     int32_t spare3;
};
typedef struct volintInfo volintInfo;

#define VOLINTINFO_SIZE 220
char *ydr_encode_volintInfo(volintInfo *o, char *ptr);
char *ydr_decode_volintInfo(volintInfo *o, char *ptr);
struct transDebugInfo {
     int32_t tid;
     int32_t time;
     int32_t creationTime;
     int32_t returnCode;
     int32_t volid;
     int32_t partition;
     int16_t iflags;
     char vflags;
     char tflags;
     char lastProcName[ 30 ];
     int32_t callValid;
     int32_t readNext;
     int32_t transmitNext;
     int32_t lastSendTime;
     int32_t lastReceiveTime;
};
typedef struct transDebugInfo transDebugInfo;

#define TRANSDEBUGINFO_SIZE 176
char *ydr_encode_transDebugInfo(transDebugInfo *o, char *ptr);
char *ydr_decode_transDebugInfo(transDebugInfo *o, char *ptr);
struct pIDs {
     int32_t partIds[ 26 ];
};
typedef struct pIDs pIDs;

#define PIDS_SIZE 104
char *ydr_encode_pIDs(pIDs *o, char *ptr);
char *ydr_decode_pIDs(pIDs *o, char *ptr);
struct diskPartition {
     char name[ 32 ];
     char devName[ 32 ];
     int32_t lock_fd;
     int32_t totalUsable;
     int32_t free;
     int32_t minFree;
};
typedef struct diskPartition diskPartition;

#define DISKPARTITION_SIZE 272
char *ydr_encode_diskPartition(diskPartition *o, char *ptr);
char *ydr_decode_diskPartition(diskPartition *o, char *ptr);
struct restoreCookie {
     char name[ 32 ];
     int32_t type;
     int32_t clone;
     int32_t parent;
};
typedef struct restoreCookie restoreCookie;

#define RESTORECOOKIE_SIZE 140
char *ydr_encode_restoreCookie(restoreCookie *o, char *ptr);
char *ydr_decode_restoreCookie(restoreCookie *o, char *ptr);
typedef struct {
unsigned len;
struct transDebugInfo *val;
} transDebugEntries;

char *ydr_encode_transDebugEntries(transDebugEntries *o, char *ptr);
char *ydr_decode_transDebugEntries(transDebugEntries *o, char *ptr);
typedef struct {
unsigned len;
struct volintInfo *val;
} volEntries;

char *ydr_encode_volEntries(volEntries *o, char *ptr);
char *ydr_decode_volEntries(volEntries *o, char *ptr);

#endif /* VOLUMESERVER */
