00001
00002
00003 #ifndef CMS_AUP_HH
00004 #define CMS_AUP_HH
00005
00006 #include "rcs_defs.hh"
00007 #include "cms_up.hh"
00008
00009 class CMS_ASCII_UPDATER:public CMS_UPDATER
00010 {
00011 public:
00012 CMS_STATUS update (char &x);
00013 CMS_STATUS update (unsigned char &x);
00014 CMS_STATUS update (short int &x);
00015 CMS_STATUS update (unsigned short int &x);
00016 CMS_STATUS update (int &x);
00017 CMS_STATUS update (unsigned int &x);
00018 CMS_STATUS update (long int &x);
00019 CMS_STATUS update (unsigned long int &x);
00020 CMS_STATUS update (float &x);
00021 CMS_STATUS update (double &x);
00022 CMS_STATUS update (long double &x);
00023 CMS_STATUS update (char *x, unsigned int len);
00024 CMS_STATUS update (unsigned char *x, unsigned int len);
00025 CMS_STATUS update (short *x, unsigned int len);
00026 CMS_STATUS update (unsigned short *x, unsigned int len);
00027 CMS_STATUS update (int *x, unsigned int len);
00028 CMS_STATUS update (unsigned int *x, unsigned int len);
00029 CMS_STATUS update (long *x, unsigned int len);
00030 CMS_STATUS update (unsigned long *x, unsigned int len);
00031 CMS_STATUS update (float *x, unsigned int len);
00032 CMS_STATUS update (double *x, unsigned int len);
00033 CMS_STATUS update (long double *x, unsigned int len);
00034 int set_mode (CMS_UPDATER_MODE);
00035 void rewind ();
00036 int get_encoded_msg_size ();
00037 protected:
00038 int check_pointer (char RCS_HUGE *, long);
00039 CMS_ASCII_UPDATER (CMS *);
00040 virtual ~ CMS_ASCII_UPDATER ();
00041 friend class RCS_EXPORT CMS;
00042 char *begin_current_string;
00043 char *end_current_string;
00044 long max_length_current_string;
00045 long length_current_string;
00046 int warning_count;
00047 int warning_count_max;
00048 };
00049
00050
00051
00052 #endif