⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cms_xup.cc

📁 Source code for an Numeric Cmputer
💻 CC
📖 第 1 页 / 共 2 页
字号:
{    /* Check to see if the pointers are in the proper range. */    if (-1 == check_pointer((char *) &x, sizeof(char))) {	return (CMS_UPDATE_ERROR);    }    if (xdr_char(current_stream, &x) != TRUE) {	rcs_print_error("CMS_XDR_UPDATER: xdr_char failed.\n");	return (status = CMS_UPDATE_ERROR);    }    return (status);}CMS_STATUS CMS_XDR_UPDATER::update(char *x, unsigned int len){    /* Check to see if the pointers are in the proper range. */    if (-1 == check_pointer((char *) x, len * sizeof(char))) {	return (CMS_UPDATE_ERROR);    }    if (xdr_bytes(current_stream, (char **) &x, &len, len) != TRUE) {	rcs_print_error("CMS_XDR_UPDATER: xdr_bytes failed.\n");	return (status = CMS_UPDATE_ERROR);    }    return (status);}CMS_STATUS CMS_XDR_UPDATER::update(unsigned char &x){    /* Check to see if the pointers are in the proper range. */    if (-1 == check_pointer((char *) &x, sizeof(char))) {	return (CMS_UPDATE_ERROR);    }    if (xdr_u_char(current_stream, (unsigned char *) &x) != TRUE) {	rcs_print_error("CMS_XDR_UPDATER: xdr_u_char failed.\n");	return (status = CMS_UPDATE_ERROR);    }    return (status);}CMS_STATUS CMS_XDR_UPDATER::update(unsigned char *x, unsigned int len){    /* Check to see if the pointers are in the proper range. */    if (-1 == check_pointer((char *) x, len * sizeof(unsigned char))) {	return (CMS_UPDATE_ERROR);    }    if (xdr_bytes(current_stream, (char **) &x, &len, len) != TRUE) {	rcs_print_error("CMS_XDR_UPDATER: xdr_bytes failed.\n");	return (status = CMS_UPDATE_ERROR);    }    return (status);}/* SHORT */CMS_STATUS CMS_XDR_UPDATER::update(short int &x){    /* Check to see if the pointers are in the proper range. */    if (-1 == check_pointer((char *) &x, sizeof(short))) {	return (CMS_UPDATE_ERROR);    }    if (xdr_short(current_stream, &x) != TRUE) {	rcs_print_error("CMS_XDR_UPDATER: xdr_short failed.\n");	return (status = CMS_UPDATE_ERROR);    }    return (status);}CMS_STATUS CMS_XDR_UPDATER::update(short *x, unsigned int len){    /* Check to see if the pointers are in the proper range. */    if (-1 == check_pointer((char *) x, len * sizeof(short))) {	return (CMS_UPDATE_ERROR);    }    if (xdr_vector(current_stream, (char *) x, len, sizeof(short),	    (xdrproc_t) xdr_short) != TRUE) {	rcs_print_error	    ("CMS_XDR_UPDATER: xdr_vector(... xdr_short) failed.\n");	return (status = CMS_UPDATE_ERROR);    }    return (status);}CMS_STATUS CMS_XDR_UPDATER::update(unsigned short int &x){    if (-1 == check_pointer((char *) &x, sizeof(unsigned short))) {	return (CMS_UPDATE_ERROR);    }    if (xdr_u_short(current_stream, &x) != TRUE) {	rcs_print_error("CMS_XDR_UPDATER: xdr_u_short failed.\n");	return (status = CMS_UPDATE_ERROR);    }    return (status);}CMS_STATUS CMS_XDR_UPDATER::update(unsigned short *x, unsigned int len){    if (-1 == check_pointer((char *) x, len * sizeof(unsigned short))) {	return (CMS_UPDATE_ERROR);    }    if (xdr_vector(current_stream,	    (char *) x, len,	    sizeof(unsigned short), (xdrproc_t) xdr_u_short) != TRUE) {	rcs_print_error	    ("CMS_XDR_UPDATER: xdr_vector(... xdr_u_short) failed.\n");	return (status = CMS_UPDATE_ERROR);    }    return (status);}/* INT */CMS_STATUS CMS_XDR_UPDATER::update(int &x){    if (-1 == check_pointer((char *) &x, sizeof(int))) {	return (CMS_UPDATE_ERROR);    }    if (xdr_int(current_stream, &x) != TRUE) {	rcs_print_error("CMS_XDR_UPDATER: xdr_int failed.\n");	return (status = CMS_UPDATE_ERROR);    }    return (status);}CMS_STATUS CMS_XDR_UPDATER::update(int *x, unsigned int len){    if (-1 == check_pointer((char *) x, len * sizeof(int))) {	return (CMS_UPDATE_ERROR);    }    if (xdr_vector(current_stream, (char *) x, len, sizeof(int),	    (xdrproc_t) xdr_int) != TRUE) {	rcs_print_error	    ("CMS_XDR_UPDATER: xdr_vector( ... xdr_int) failed.\n");	return (status = CMS_UPDATE_ERROR);    }    return (status);}CMS_STATUS CMS_XDR_UPDATER::update(unsigned int &x){    if (-1 == check_pointer((char *) &x, sizeof(unsigned int))) {	return (CMS_UPDATE_ERROR);    }    if (xdr_u_int(current_stream, &x) != TRUE) {	rcs_print_error("CMS_XDR_UPDATER: xdr_u_int failed.\n");	return (status = CMS_UPDATE_ERROR);    }    return (status);}CMS_STATUS CMS_XDR_UPDATER::update(unsigned int *x, unsigned int len){    if (-1 == check_pointer((char *) x, len * sizeof(unsigned int))) {	return (CMS_UPDATE_ERROR);    }    if (xdr_vector(current_stream,	    (char *) x, len,	    sizeof(unsigned int), (xdrproc_t) xdr_u_int) != TRUE) {	rcs_print_error	    ("CMS_XDR_UPDATER: xdr_vector(... xdr_u_int) failed.\n");	return (status = CMS_UPDATE_ERROR);    }    return (status);}/* LONG */CMS_STATUS CMS_XDR_UPDATER::update(long int &x){    if (-1 == check_pointer((char *) &x, sizeof(long))) {	return (CMS_UPDATE_ERROR);    }    if (xdr_long(current_stream, &x) != TRUE) {	rcs_print_error("CMS_XDR_UPDATER: xdr_long failed.\n");	return (status = CMS_UPDATE_ERROR);    }    return (status);}CMS_STATUS CMS_XDR_UPDATER::update(long *x, unsigned int len){    if (-1 == check_pointer((char *) x, len * sizeof(long))) {	return (CMS_UPDATE_ERROR);    }    if (xdr_vector(current_stream, (char *) x, len, sizeof(long),	    (xdrproc_t) xdr_long) != TRUE) {	rcs_print_error	    ("CMS_XDR_UPDATER: xdr_vector(... xdr_long) failed.\n");	return (status = CMS_UPDATE_ERROR);    }    return (status);}CMS_STATUS CMS_XDR_UPDATER::update(unsigned long int &x){    if (-1 == check_pointer((char *) &x, sizeof(unsigned long))) {	return (CMS_UPDATE_ERROR);    }    if (xdr_u_long(current_stream, &x) != TRUE) {	rcs_print_error("CMS_XDR_UPDATER: xdr_u_long failed.\n");	return (status = CMS_UPDATE_ERROR);    }    return (status);}CMS_STATUS CMS_XDR_UPDATER::update(unsigned long *x, unsigned int len){    if (-1 == check_pointer((char *) x, len * sizeof(unsigned long))) {	return (CMS_UPDATE_ERROR);    }    if (xdr_vector(current_stream,	    (char *) x, len, sizeof(unsigned long),	    (xdrproc_t) xdr_u_long) != TRUE) {	rcs_print_error	    ("CMS_XDR_UPDATER: xdr_vector(... xdr_u_long) failed.\n");	return (status = CMS_UPDATE_ERROR);    }    return (status);}/* FLOAT */CMS_STATUS CMS_XDR_UPDATER::update(float &x){    if (-1 == check_pointer((char *) &x, sizeof(float))) {	return (CMS_UPDATE_ERROR);    }    if (xdr_float(current_stream, &x) != TRUE) {	rcs_print_error("CMS_XDR_UPDATER: xdr_float failed.\n");	return (status = CMS_UPDATE_ERROR);    }    return (status);}CMS_STATUS CMS_XDR_UPDATER::update(float *x, unsigned int len){    if (-1 == check_pointer((char *) x, len * sizeof(float))) {	return (CMS_UPDATE_ERROR);    }    if (xdr_vector(current_stream, (char *) x, len, sizeof(float),	    (xdrproc_t) xdr_float) != TRUE) {	rcs_print_error	    ("CMS_XDR_UPDATER: xdr_vector(... xdr_float) failed.\n");	return (status = CMS_UPDATE_ERROR);    }    return (status);}CMS_STATUS CMS_XDR_UPDATER::update(double &x){    if (-1 == check_pointer((char *) &x, sizeof(double))) {	return (CMS_UPDATE_ERROR);    }    if (xdr_double(current_stream, &x) != TRUE) {	rcs_print_error("CMS_XDR_UPDATER: xdr_double failed.\n");	return (status = CMS_UPDATE_ERROR);    }    return (status);}CMS_STATUS CMS_XDR_UPDATER::update(double *x, unsigned int len){    if (-1 == check_pointer((char *) x, len * sizeof(double))) {	return (CMS_UPDATE_ERROR);    }    if (xdr_vector(current_stream, (char *) x, len, sizeof(double),	    (xdrproc_t) xdr_double) != TRUE) {	rcs_print_error	    ("CMS_XDR_UPDATER: xdr_vector(... xdr_double) failed.\n");	return (status = CMS_UPDATE_ERROR);    }    return (status);}/* NOTE: Because XDR does not include seperate facilities for long doubles. *//* Some resolution will be lost if long doubles are passed through XDR. *//* This routine is included only for the sake of completeness. *//* Avoid using long doubles in NML messages. */CMS_STATUS CMS_XDR_UPDATER::update(long double &x){    if (-1 == check_pointer((char *) &x, sizeof(long double))) {	return (CMS_UPDATE_ERROR);    }    double y;    y = (double) x;    if (xdr_double(current_stream, &y) != TRUE) {	rcs_print_error("CMS_XDR_UPDATER: xdr_double failed.\n");	return (status = CMS_UPDATE_ERROR);    }    x = (long double) y;    return (status);}CMS_STATUS CMS_XDR_UPDATER::update(long double *x, unsigned int len){    if (-1 == check_pointer((char *) x, len * sizeof(long double))) {	return (CMS_UPDATE_ERROR);    }    unsigned int i;    double *y;    y = (double *) malloc(sizeof(double) * len);    for (i = 0; i < len; i++) {	y[i] = (double) x[i];    }    if (xdr_vector(current_stream, (char *) y, len, sizeof(double),	    (xdrproc_t) xdr_double) != TRUE) {	rcs_print_error	    ("CMS_XDR_UPDATER: xdr_vector(... xdr_double) failed.\n");	return (status = CMS_UPDATE_ERROR);    }    for (i = 0; i < len; i++) {	x[i] = (long double) y[i];    }    free(y);    return (status);}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -