/*
 * Please do not edit this file.
 * It was generated using rpcgen.
 */

#include <rpc/rpc.h>
#include "prog.h"

bool_t
xdr_rpc_RTable(xdrs, objp)
	XDR *xdrs;
	rpc_RTable objp;
{
	if (!xdr_vector(xdrs, (char *)objp, 267, sizeof(double), xdr_double)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_ExprAssoc(xdrs, objp)
	XDR *xdrs;
	rpc_ExprAssoc *objp;
{
	if (!xdr_u_long(xdrs, &objp->lhs)) {
		return (FALSE);
	}
	if (!xdr_pointer(xdrs, (char **)&objp->expr, sizeof(rpc_Expr), xdr_rpc_Expr)) {
		return (FALSE);
	}
	if (!xdr_pointer(xdrs, (char **)&objp->next, sizeof(rpc_ExprAssoc), xdr_rpc_ExprAssoc)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_Vec2d(xdrs, objp)
	XDR *xdrs;
	rpc_Vec2d *objp;
{
	if (!xdr_double(xdrs, &objp->u)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->v)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_Vector(xdrs, objp)
	XDR *xdrs;
	rpc_Vector *objp;
{
	if (!xdr_double(xdrs, &objp->x)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->y)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->z)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_RSMatrix(xdrs, objp)
	XDR *xdrs;
	rpc_RSMatrix *objp;
{
	if (!xdr_vector(xdrs, (char *)objp->matrix, 9, sizeof(double), xdr_double)) {
		return (FALSE);
	}
	if (!xdr_rpc_Vector(xdrs, &objp->translate)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_Color(xdrs, objp)
	XDR *xdrs;
	rpc_Color *objp;
{
	if (!xdr_double(xdrs, &objp->r)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->g)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->b)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_ColorMap(xdrs, objp)
	XDR *xdrs;
	rpc_ColorMap objp;
{
	if (!xdr_vector(xdrs, (char *)objp, 256, sizeof(rpc_Color), xdr_rpc_Color)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_GeomList(xdrs, objp)
	XDR *xdrs;
	rpc_GeomList *objp;
{
	if (!xdr_pointer(xdrs, (char **)&objp->obj, sizeof(struct rpc_Geom), xdr_rpc_Geom)) {
		return (FALSE);
	}
	if (!xdr_pointer(xdrs, (char **)&objp->next, sizeof(rpc_GeomList), xdr_rpc_GeomList)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_Instance(xdrs, objp)
	XDR *xdrs;
	rpc_Instance *objp;
{
	if (!xdr_pointer(xdrs, (char **)&objp->obj, sizeof(rpc_Geom), xdr_rpc_Geom)) {
		return (FALSE);
	}
	if (!xdr_vector(xdrs, (char *)objp->bounds, 6, sizeof(double), xdr_double)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_uInstance(xdrs, objp)
	XDR *xdrs;
	rpc_uInstance *objp;
{
	if (!xdr_long(xdrs, &objp->obj)) {
		return (FALSE);
	}
	if (!xdr_vector(xdrs, (char *)objp->bounds, 6, sizeof(double), xdr_double)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_List(xdrs, objp)
	XDR *xdrs;
	rpc_List *objp;
{
	if (!xdr_pointer(xdrs, (char **)&objp->list, sizeof(rpc_Geom), xdr_rpc_Geom)) {
		return (FALSE);
	}
	if (!xdr_pointer(xdrs, (char **)&objp->unbounded, sizeof(rpc_Geom), xdr_rpc_Geom)) {
		return (FALSE);
	}
	if (!xdr_vector(xdrs, (char *)objp->bounds, 6, sizeof(double), xdr_double)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_Rotate(xdrs, objp)
	XDR *xdrs;
	rpc_Rotate *objp;
{
	if (!xdr_double(xdrs, &objp->x)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->y)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->z)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->theta)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_MetaVector(xdrs, objp)
	XDR *xdrs;
	rpc_MetaVector *objp;
{
	if (!xdr_double(xdrs, &objp->rs)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->c4)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->c2)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->c0)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->x)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->y)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->z)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_Box(xdrs, objp)
	XDR *xdrs;
	rpc_Box *objp;
{
	if (!xdr_vector(xdrs, (char *)objp->bounds, 6, sizeof(double), xdr_double)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_Cone(xdrs, objp)
	XDR *xdrs;
	rpc_Cone *objp;
{
	if (!xdr_double(xdrs, &objp->start_dist)) {
		return (FALSE);
	}
	if (!xdr_rpc_Trans(xdrs, &objp->trans)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_Cylinder(xdrs, objp)
	XDR *xdrs;
	rpc_Cylinder *objp;
{
	if (!xdr_rpc_Trans(xdrs, &objp->trans)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_Disc(xdrs, objp)
	XDR *xdrs;
	rpc_Disc *objp;
{
	if (!xdr_double(xdrs, &objp->radius)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->d)) {
		return (FALSE);
	}
	if (!xdr_rpc_Vector(xdrs, &objp->norm)) {
		return (FALSE);
	}
	if (!xdr_rpc_Vector(xdrs, &objp->pos)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_Plane(xdrs, objp)
	XDR *xdrs;
	rpc_Plane *objp;
{
	if (!xdr_rpc_Vector(xdrs, &objp->norm)) {
		return (FALSE);
	}
	if (!xdr_rpc_Vector(xdrs, &objp->pos)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->d)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_Sphere(xdrs, objp)
	XDR *xdrs;
	rpc_Sphere *objp;
{
	if (!xdr_double(xdrs, &objp->r)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->rsq)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->x)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->y)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->z)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_Torus(xdrs, objp)
	XDR *xdrs;
	rpc_Torus *objp;
{
	if (!xdr_double(xdrs, &objp->a)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->b)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->aa)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->bb)) {
		return (FALSE);
	}
	if (!xdr_rpc_Trans(xdrs, &objp->trans)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_Triangle(xdrs, objp)
	XDR *xdrs;
	rpc_Triangle *objp;
{
	if (!xdr_rpc_Vector(xdrs, &objp->nrm)) {
		return (FALSE);
	}
	if (!xdr_vector(xdrs, (char *)objp->p, 3, sizeof(rpc_Vector), xdr_rpc_Vector)) {
		return (FALSE);
	}
	if (!xdr_vector(xdrs, (char *)objp->e, 3, sizeof(rpc_Vector), xdr_rpc_Vector)) {
		return (FALSE);
	}
	if (!xdr_pointer(xdrs, (char **)&objp->vnorm, sizeof(rpc_Vector), xdr_rpc_Vector)) {
		return (FALSE);
	}
	if (!xdr_pointer(xdrs, (char **)&objp->dpdu, sizeof(rpc_Vector), xdr_rpc_Vector)) {
		return (FALSE);
	}
	if (!xdr_pointer(xdrs, (char **)&objp->dpdv, sizeof(rpc_Vector), xdr_rpc_Vector)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->d)) {
		return (FALSE);
	}
	if (!xdr_vector(xdrs, (char *)objp->b, 3, sizeof(double), xdr_double)) {
		return (FALSE);
	}
	if (!xdr_pointer(xdrs, (char **)&objp->uv, sizeof(rpc_Vec2d), xdr_rpc_Vec2d)) {
		return (FALSE);
	}
	if (!xdr_char(xdrs, &objp->index)) {
		return (FALSE);
	}
	if (!xdr_char(xdrs, &objp->type)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_ShadowCache(xdrs, objp)
	XDR *xdrs;
	rpc_ShadowCache *objp;
{
	if (!xdr_pointer(xdrs, (char **)&objp->obj, sizeof(struct rpc_Geom), xdr_rpc_Geom)) {
		return (FALSE);
	}
	if (!xdr_rpc_RSMatrix(xdrs, &objp->trans)) {
		return (FALSE);
	}
	if (!xdr_char(xdrs, &objp->dotrans)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_Pointlight(xdrs, objp)
	XDR *xdrs;
	rpc_Pointlight *objp;
{
	if (!xdr_rpc_Vector(xdrs, &objp->pos)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_Spotlight(xdrs, objp)
	XDR *xdrs;
	rpc_Spotlight *objp;
{
	if (!xdr_rpc_Vector(xdrs, &objp->pos)) {
		return (FALSE);
	}
	if (!xdr_rpc_Vector(xdrs, &objp->dir)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->coef)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->radius)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->falloff)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_Extended(xdrs, objp)
	XDR *xdrs;
	rpc_Extended *objp;
{
	if (!xdr_rpc_Vector(xdrs, &objp->pos)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->radius)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_Jittered(xdrs, objp)
	XDR *xdrs;
	rpc_Jittered *objp;
{
	if (!xdr_rpc_Vector(xdrs, &objp->pos)) {
		return (FALSE);
	}
	if (!xdr_rpc_Vector(xdrs, &objp->curpos)) {
		return (FALSE);
	}
	if (!xdr_rpc_Vector(xdrs, &objp->e1)) {
		return (FALSE);
	}
	if (!xdr_rpc_Vector(xdrs, &objp->e2)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_Infinite(xdrs, objp)
	XDR *xdrs;
	rpc_Infinite *objp;
{
	if (!xdr_rpc_Vector(xdrs, &objp->dir)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_Surface(xdrs, objp)
	XDR *xdrs;
	rpc_Surface *objp;
{
	if (!xdr_nm(xdrs, &objp->name)) {
		return (FALSE);
	}
	if (!xdr_rpc_Color(xdrs, &objp->amb)) {
		return (FALSE);
	}
	if (!xdr_rpc_Color(xdrs, &objp->diff)) {
		return (FALSE);
	}
	if (!xdr_rpc_Color(xdrs, &objp->spec)) {
		return (FALSE);
	}
	if (!xdr_rpc_Color(xdrs, &objp->translu)) {
		return (FALSE);
	}
	if (!xdr_rpc_Color(xdrs, &objp->body)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->srexp)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->stexp)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->statten)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->index)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->reflect)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->transp)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->translucency)) {
		return (FALSE);
	}
	if (!xdr_char(xdrs, &objp->noshadow)) {
		return (FALSE);
	}
	if (!xdr_pointer(xdrs, (char **)&objp->next, sizeof(rpc_Surface), xdr_rpc_Surface)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_Fog(xdrs, objp)
	XDR *xdrs;
	rpc_Fog *objp;
{
	if (!xdr_rpc_Color(xdrs, &objp->color)) {
		return (FALSE);
	}
	if (!xdr_rpc_Color(xdrs, &objp->trans)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_Fogdeck(xdrs, objp)
	XDR *xdrs;
	rpc_Fogdeck *objp;
{
	if (!xdr_double(xdrs, &objp->alt)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->offset)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->chaoscale)) {
		return (FALSE);
	}
	if (!xdr_rpc_Vector(xdrs, &objp->scale)) {
		return (FALSE);
	}
	if (!xdr_rpc_Color(xdrs, &objp->color)) {
		return (FALSE);
	}
	if (!xdr_rpc_Color(xdrs, &objp->trans)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->octaves)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_Mist(xdrs, objp)
	XDR *xdrs;
	rpc_Mist *objp;
{
	if (!xdr_rpc_Color(xdrs, &objp->color)) {
		return (FALSE);
	}
	if (!xdr_rpc_Color(xdrs, &objp->trans)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->scale)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->zero)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_Blotch(xdrs, objp)
	XDR *xdrs;
	rpc_Blotch *objp;
{
	if (!xdr_double(xdrs, &objp->mix)) {
		return (FALSE);
	}
	if (!xdr_rpc_uSurface_Ptr(xdrs, &objp->surf)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_Bump(xdrs, objp)
	XDR *xdrs;
	rpc_Bump *objp;
{
	if (!xdr_double(xdrs, &objp->size)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_Checker(xdrs, objp)
	XDR *xdrs;
	rpc_Checker *objp;
{
	if (!xdr_pointer(xdrs, (char **)&objp->surf, sizeof(rpc_Surface), xdr_rpc_Surface)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_CloudText(xdrs, objp)
	XDR *xdrs;
	rpc_CloudText *objp;
{
	if (!xdr_double(xdrs, &objp->beta)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->omega)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->lambda)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->scale)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->cthresh)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->range)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->transcale)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->maxval)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->octaves)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_FBm(xdrs, objp)
	XDR *xdrs;
	rpc_FBm *objp;
{
	if (!xdr_double(xdrs, &objp->beta)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->omega)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->lambda)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->scale)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->offset)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->thresh)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->octaves)) {
		return (FALSE);
	}
	if (!xdr_pointer(xdrs, (char **)&objp->colormap, sizeof(rpc_ColorMap), xdr_rpc_ColorMap)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_Gloss(xdrs, objp)
	XDR *xdrs;
	rpc_Gloss *objp;
{
	if (!xdr_double(xdrs, &objp->glossy)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_ImageText(xdrs, objp)
	XDR *xdrs;
	rpc_ImageText *objp;
{
	if (!xdr_u_long(xdrs, &objp->image)) {
		return (FALSE);
	}
	if (!xdr_pointer(xdrs, (char **)&objp->surf, sizeof(rpc_Surface), xdr_rpc_Surface)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->component)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->smooth)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->lo)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->hi)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->tileu)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->tilev)) {
		return (FALSE);
	}
	if (!xdr_pointer(xdrs, (char **)&objp->mapping, sizeof(rpc_Mapping), xdr_rpc_Mapping)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_Marble(xdrs, objp)
	XDR *xdrs;
	rpc_Marble *objp;
{
	if (!xdr_pointer(xdrs, (char **)&objp->colormap, sizeof(rpc_ColorMap), xdr_rpc_ColorMap)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_Mount(xdrs, objp)
	XDR *xdrs;
	rpc_Mount *objp;
{
	if (!xdr_double(xdrs, &objp->turb)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->slope)) {
		return (FALSE);
	}
	if (!xdr_pointer(xdrs, (char **)&objp->cmap, sizeof(rpc_ColorMap), xdr_rpc_ColorMap)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_Sky(xdrs, objp)
	XDR *xdrs;
	rpc_Sky *objp;
{
	if (!xdr_double(xdrs, &objp->beta)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->omega)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->lambda)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->scale)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->cthresh)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->lthresh)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->octaves)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_Stripe(xdrs, objp)
	XDR *xdrs;
	rpc_Stripe *objp;
{
	if (!xdr_rpc_uSurface_Ptr(xdrs, &objp->surf)) {
		return (FALSE);
	}
	if (!xdr_pointer(xdrs, (char **)&objp->mapping, sizeof(rpc_Mapping), xdr_rpc_Mapping)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->width)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->bump)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_WindyText(xdrs, objp)
	XDR *xdrs;
	rpc_WindyText *objp;
{
	if (!xdr_double(xdrs, &objp->scale)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->windscale)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->chaoscale)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->bumpscale)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->tscale)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->hscale)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->offset)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->octaves)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_Medium(xdrs, objp)
	XDR *xdrs;
	rpc_Medium *objp;
{
	if (!xdr_double(xdrs, &objp->index)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->statten)) {
		return (FALSE);
	}
	if (!xdr_pointer(xdrs, (char **)&objp->next, sizeof(rpc_Medium), xdr_rpc_Medium)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_RSOptions(xdrs, objp)
	XDR *xdrs;
	rpc_RSOptions *objp;
{
	if (!xdr_int(xdrs, &objp->stereo)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->verbose)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->quiet)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->jitter)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->samples)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->maxdepth)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->report_freq)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->no_shadows)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->shadowtransp)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->cache)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->appending)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->resolution_set)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->contrast_set)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->samples_set)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->cutoff_set)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->maxdepth_set)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->window_set)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->freq_set)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->jitter_set)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->eyesep_set)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->csg)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->flipnorm)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->samplemap)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->gaussian)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->framenum)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->startframe)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->endframe)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->totalframes)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->totalframes_set)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->alpha)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->exp_output)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->eyesep)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->gamma)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->xmin)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->xmax)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->ymin)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->ymax)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->starttime)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->shutterspeed)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->framestart)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->framelength)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->filterwidth)) {
		return (FALSE);
	}
	if (!xdr_rpc_Color(xdrs, &objp->contrast)) {
		return (FALSE);
	}
	if (!xdr_rpc_Color(xdrs, &objp->cutoff)) {
		return (FALSE);
	}
	if (!xdr_rpc_Color(xdrs, &objp->ambient)) {
		return (FALSE);
	}
	if (!xdr_nm(xdrs, &objp->progname)) {
		return (FALSE);
	}
	if (!xdr_nm(xdrs, &objp->statsname)) {
		return (FALSE);
	}
	if (!xdr_nm(xdrs, &objp->imgname)) {
		return (FALSE);
	}
	if (!xdr_nm(xdrs, &objp->inputname)) {
		return (FALSE);
	}
	if (!xdr_nm(xdrs, &objp->cppargs)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->is_rpc_client)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->is_rpc_server)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->squaresize)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->display)) {
		return (FALSE);
	}
	if (!xdr_nm(xdrs, &objp->serverfilename)) {
		return (FALSE);
	}
	if (!xdr_nm(xdrs, &objp->serverexestring)) {
		return (FALSE);
	}
	if (!xdr_long(xdrs, &objp->pictfile)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_RSScreen(xdrs, objp)
	XDR *xdrs;
	rpc_RSScreen *objp;
{
	if (!xdr_int(xdrs, &objp->xres)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->yres)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->xsize)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->ysize)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->minx)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->miny)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->maxx)) {
		return (FALSE);
	}
	if (!xdr_int(xdrs, &objp->maxy)) {
		return (FALSE);
	}
	if (!xdr_rpc_Vector(xdrs, &objp->scrnx)) {
		return (FALSE);
	}
	if (!xdr_rpc_Vector(xdrs, &objp->scrny)) {
		return (FALSE);
	}
	if (!xdr_rpc_Vector(xdrs, &objp->scrni)) {
		return (FALSE);
	}
	if (!xdr_rpc_Vector(xdrs, &objp->scrnj)) {
		return (FALSE);
	}
	if (!xdr_rpc_Vector(xdrs, &objp->firstray)) {
		return (FALSE);
	}
	if (!xdr_rpc_Color(xdrs, &objp->background)) {
		return (FALSE);
	}
	return (TRUE);
}

bool_t
xdr_rpc_RSCamera(xdrs, objp)
	XDR *xdrs;
	rpc_RSCamera *objp;
{
	if (!xdr_rpc_Vector(xdrs, &objp->pos)) {
		return (FALSE);
	}
	if (!xdr_rpc_Vector(xdrs, &objp->lookp)) {
		return (FALSE);
	}
	if (!xdr_rpc_Vector(xdrs, &objp->dir)) {
		return (FALSE);
	}
	if (!xdr_rpc_Vector(xdrs, &objp->up)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->hfov)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->vfov)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->lookdist)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->aperture)) {
		return (FALSE);
	}
	if (!xdr_double(xdrs, &objp->focaldist)) {
		return (FALSE);
	}
	return (TRUE);
}
