Aggiunta documentazione in linea
git-svn-id: svn://10.65.10.50/trunk@1372 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
		
							parent
							
								
									a699373f91
								
							
						
					
					
						commit
						e89e4dfb78
					
				@ -14,6 +14,8 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
#include <real.h>
 | 
					#include <real.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// @doc EXTERNAL
 | 
				
			||||||
 | 
					
 | 
				
			||||||
HIDDEN TDate __tmp_date;
 | 
					HIDDEN TDate __tmp_date;
 | 
				
			||||||
HIDDEN char __date_tmp_string[64];
 | 
					HIDDEN char __date_tmp_string[64];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -102,7 +104,34 @@ TDate::TDate(int day, int month, int year)
 | 
				
			|||||||
  memcpy(_format, "1444-", 5);
 | 
					  memcpy(_format, "1444-", 5);
 | 
				
			||||||
}       
 | 
					}       
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void TDate::set_format(const char* f)
 | 
					// @mfunc Permette di stabilire il criterio di formattazione delle date
 | 
				
			||||||
 | 
					void TDate::set_format(
 | 
				
			||||||
 | 
					  const char* f) // @parm Stringa di 5 caratteri che indica il formato della data
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					  // @comm Ogni carattere del parametro <p f>   permette di settare un tipo di formattazione
 | 
				
			||||||
 | 
					  //             della data:
 | 
				
			||||||
 | 
					  //             <nl>1° carattere -<gt> FORMATO. Puo' assumere i seguenti valori:
 | 
				
			||||||
 | 
					  //             <nl>   1 = giorno-mese-anno
 | 
				
			||||||
 | 
					  //       <nl> 2 = mese-anno-giorno
 | 
				
			||||||
 | 
					  //             <nl>   3 = anno-giorno-mese
 | 
				
			||||||
 | 
					  //             <nl>   4 = solo anno
 | 
				
			||||||
 | 
					  //             <nl>   5 = solo mese
 | 
				
			||||||
 | 
					  //             <nl>   6 = solo giorno
 | 
				
			||||||
 | 
					  //             <nl>   7 = mese-anno
 | 
				
			||||||
 | 
					  //             <nl><nl>2° carattere -<gt> Formato GIORNO. Puo assumere i seguenti valori:
 | 
				
			||||||
 | 
					  //             <nl>   2 = formato normale (es. 4)
 | 
				
			||||||
 | 
					  //             <nl>   4 = formato con 0 (es. 04)
 | 
				
			||||||
 | 
					  //             <nl>   5 = lettere (es. quattro)
 | 
				
			||||||
 | 
					  //             <nl>   6 = giorno della settimana
 | 
				
			||||||
 | 
					  //             <nl><nl>3° carattere -<gt> Formato MESE. Puo assumere i seguenti valori:
 | 
				
			||||||
 | 
					  //             <nl>   2 = formato normale (es. 4)
 | 
				
			||||||
 | 
					  //             <nl>   4 = formato con 0 (es. 04)
 | 
				
			||||||
 | 
					  //             <nl>   5 = lettere (es. quattro)
 | 
				
			||||||
 | 
					  //             <nl>   7 = trimestre
 | 
				
			||||||
 | 
					  //             <nl><nl>4° carattere -<gt> Formato ANNO. Puo' assumere i seguenti valori:
 | 
				
			||||||
 | 
					  //             <nl>   2 = breve (es. 95)
 | 
				
			||||||
 | 
					  //             <nl>   4 = lungo (es. 1995)
 | 
				
			||||||
 | 
					  //       <nl><nl>5° carattere -<gt> Carattere SEPARATORE. Puo' essere un carattere o lo spazio
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  memcpy(_format, f, 5);
 | 
					  memcpy(_format, f, 5);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
@ -191,9 +220,17 @@ void TDate::read_from(istream& in)
 | 
				
			|||||||
  else _val = NULLDATE;
 | 
					  else _val = NULLDATE;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// @mfunc Ritorna la data in formato di stringa (anche in formato ANSI)
 | 
				
			||||||
char* TDate::string(TDate_mgafmt yearf, char sep, TDate_mgafmt dayf, 
 | 
					//
 | 
				
			||||||
                    TDate_mgafmt monthf, TDate_order ord) const
 | 
					// @rdesc Se si tratta di una data valida ritorna la stringa secondo il
 | 
				
			||||||
 | 
					//        formato scelto (vedi <t TDate_mgafmt>), altrimenti ritorna ""
 | 
				
			||||||
 | 
					char* TDate::string(
 | 
				
			||||||
 | 
					  TDate_mgafmt yearf,     // @parm Formato per l'anno (default def)
 | 
				
			||||||
 | 
					  char sep,               // @parm Carattere separatore (default '-')
 | 
				
			||||||
 | 
					  TDate_mgafmt dayf,      // @parm Formato per il giorno (default def)
 | 
				
			||||||
 | 
					  TDate_mgafmt monthf,    // @parm Formato per il mese (default def)
 | 
				
			||||||
 | 
					  TDate_order ord) const  // @parm Ordine con la quale visualizzare la data
 | 
				
			||||||
 | 
					  //       (vedi <t TDate_order>; default gma_date)
 | 
				
			||||||
{ 
 | 
					{ 
 | 
				
			||||||
  if (!ok()) return "";
 | 
					  if (!ok()) return "";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -405,7 +442,15 @@ bool TDate::ok() const
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
TDate& operator +(const TDate& a, long nday)
 | 
					// @func TDate& | operator + | Incrementa la data di un certo numero di giorni
 | 
				
			||||||
 | 
					TDate& operator +(
 | 
				
			||||||
 | 
					  const TDate& a,  // @parm Data a cui aggiungere i giorni
 | 
				
			||||||
 | 
					  long nday)       // @parm Numero di giorni da aggiungere
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  // @syntax operator + (const TDate& a, long nday)
 | 
				
			||||||
 | 
					  // @syntax operator + (long nday, const TDate& a)
 | 
				
			||||||
 | 
					  //
 | 
				
			||||||
 | 
					  // @comm E' indifferente quale parametro viene passato per primo
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  __tmp_date = long(a) + nday;
 | 
					  __tmp_date = long(a) + nday;
 | 
				
			||||||
@ -421,15 +466,20 @@ TDate& operator +(const long nday, const TDate& b)
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
TDate& operator -(const TDate& a, long nday)
 | 
					// @func TDate& | operator - | Decrementa la data di un certo numero di giorni
 | 
				
			||||||
 | 
					TDate& operator -(
 | 
				
			||||||
 | 
					  const TDate& a,  // @parm Data da decrementare
 | 
				
			||||||
 | 
					  long nday)       // @parm Numero di giorni da togliere
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  __tmp_date = long(a)- nday;
 | 
					  __tmp_date = long(a)- nday;
 | 
				
			||||||
  return __tmp_date;
 | 
					  return __tmp_date;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// @func Scambia la data <p a> con la data <p b>
 | 
				
			||||||
void swap(TDate& a, TDate& b)
 | 
					void swap(
 | 
				
			||||||
 | 
					  TDate& a,  // @parm Prima data da scambiare
 | 
				
			||||||
 | 
					  TDate& b)  // @parm Seconda data da scambiare
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  __tmp_date = b;
 | 
					  __tmp_date = b;
 | 
				
			||||||
@ -438,15 +488,20 @@ void swap(TDate& a, TDate& b)
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const TDate& fnc_min(const TDate& a, const TDate& b)
 | 
					// @func Ritorna la data piu' piccola tra <p a> e <p b>
 | 
				
			||||||
 | 
					const TDate& fnc_min(
 | 
				
			||||||
 | 
					  const TDate& a, // @parm Prima data da confrontare
 | 
				
			||||||
 | 
					  const TDate& b) // @parm Secondo data da confrontare
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  if (a < b) return a;
 | 
					  if (a < b) return a;
 | 
				
			||||||
  else return b;
 | 
					  else return b;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// @func Ritorna la data piu' grande tra <p a> e <p b>
 | 
				
			||||||
const TDate& fnc_max(const TDate& a, const TDate& b)
 | 
					const TDate& fnc_max(
 | 
				
			||||||
 | 
					  const TDate& a,  // @parm Prima data da confrontare
 | 
				
			||||||
 | 
					  const TDate& b)  // @parm Secondo data da confrontare
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  if (a > b) return a;
 | 
					  if (a > b) return a;
 | 
				
			||||||
@ -454,8 +509,12 @@ const TDate& fnc_max(const TDate& a, const TDate& b)
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// Converte un numero da 1 a 12 nel corrispondente mese
 | 
					// @func Converte un numero da 1 a 12 nel corrispondente mese
 | 
				
			||||||
const char* itom(byte m)
 | 
					const char* itom(
 | 
				
			||||||
 | 
					  byte m) // @parm Numero del mese da convertire in parole (da 1 a 12)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  // @comm Se il parametro <p m> e' maggiore di 12 viene calcolato il nome del
 | 
				
			||||||
 | 
					  //       mese corrispondente a tale cifra (es. 15 = "Marzo")
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  const char* nomi[12] =
 | 
					  const char* nomi[12] =
 | 
				
			||||||
  {
 | 
					  {
 | 
				
			||||||
@ -466,7 +525,13 @@ const char* itom(byte m)
 | 
				
			|||||||
  return nomi[(m-1) % 12];
 | 
					  return nomi[(m-1) % 12];
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const char* itow(byte d)
 | 
					// @func Ritorna il nome del giorno (1-7)
 | 
				
			||||||
 | 
					const char* itow(
 | 
				
			||||||
 | 
					  byte d) // @parm Numero del giorna da convertire in parole (da 1 a 7)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  // @comm Come primo giorno della setimana e' preso il Lunedi.
 | 
				
			||||||
 | 
					  //       <nl>Se il parametro <p d> e' maggiore di 7 viene calcolato il nome del
 | 
				
			||||||
 | 
					  //       giorno corrispondente a tale cifra (es. 15 = "Lunedi")
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  const char* nomi[7] =
 | 
					  const char* nomi[7] =
 | 
				
			||||||
  { "Lunedi", "Martedi", "Mercoledi",   "Giovedi", "Venerdi",
 | 
					  { "Lunedi", "Martedi", "Mercoledi",   "Giovedi", "Venerdi",
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										222
									
								
								include/date.h
									
									
									
									
									
								
							
							
						
						
									
										222
									
								
								include/date.h
									
									
									
									
									
								
							@ -5,105 +5,219 @@
 | 
				
			|||||||
#include <object.h>
 | 
					#include <object.h>
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// @C
 | 
					 | 
				
			||||||
// Classe TDate : TObject
 | 
					 | 
				
			||||||
// @END
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define TODAY  -1
 | 
					#define TODAY  -1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
enum TDate_order   { gma_date = 1, mga_date, amg_date, a_date, m_date, g_date, ma_date };
 | 
					// @doc EXTERNAL
 | 
				
			||||||
enum TDate_mgafmt  { ANSI = -1, brief = 2, full = 4, letters = 5, weekday = 6, quarter = 7, 
 | 
					 | 
				
			||||||
                     def = 99 };
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// @enum TDate_order | Criterio col quale ordinare gli elementi della data
 | 
				
			||||||
 | 
					enum TDate_order   {
 | 
				
			||||||
 | 
					  gma_date = 1,  // @emem Giorno-Mese-Anno (default 1)
 | 
				
			||||||
 | 
					  mga_date,      // @emem Mese-Giorno-Anno
 | 
				
			||||||
 | 
					  amg_date,      // @emem Anno-Mese-Giorno
 | 
				
			||||||
 | 
					  a_date,        // @emem Solo anno
 | 
				
			||||||
 | 
					  m_date,        // @emem Solo Mese
 | 
				
			||||||
 | 
					  g_date,        // @emem Solo Giorno
 | 
				
			||||||
 | 
					  ma_date };     // @emem Mese-Anno
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// @enum TDate_mgafmt | Criterio col quale visualizzare le date
 | 
				
			||||||
 | 
					enum TDate_mgafmt  {
 | 
				
			||||||
 | 
					  ANSI = -1,     // @emem Formato ANSI
 | 
				
			||||||
 | 
					  brief = 2,     // @emem Formato breve
 | 
				
			||||||
 | 
					  full = 4,      // @emem Formato completo
 | 
				
			||||||
 | 
					  letters = 5,   // @emem Lettere
 | 
				
			||||||
 | 
					  weekday = 6,   // @emem Giorno della settimana
 | 
				
			||||||
 | 
					  quarter = 7,   // @emem Formato trimestrale
 | 
				
			||||||
 | 
					  def = 99 };    // @emem Formato standard
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// @class TDate | Classe per la gestione delle date
 | 
				
			||||||
 | 
					//
 | 
				
			||||||
 | 
					// @base public | TObject
 | 
				
			||||||
class TDate : public TObject
 | 
					class TDate : public TObject
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  // @DPRIV
 | 
					  // @access Private Member
 | 
				
			||||||
  long    _val;        // Valore data in formato packed
 | 
					 | 
				
			||||||
  byte    _format[5];  // formato per tutti i pezzettini
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
  // @DES Operatori esterni < > <= >= == !=
 | 
					  // @cmember Valore data in formato packed
 | 
				
			||||||
  // @FPUB
 | 
					  long _val;
 | 
				
			||||||
 | 
					  // @cmember Formato per tutti i pezzettini
 | 
				
			||||||
 | 
					  byte _format[5];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  // @cmember Controlla se una data e' minore di un'altra
 | 
				
			||||||
  friend bool operator <(const TDate& a, const TDate& b);
 | 
					  friend bool operator <(const TDate& a, const TDate& b);
 | 
				
			||||||
 | 
					  // @cmember Controlla se una data e' maggiore di un'altra
 | 
				
			||||||
  friend bool operator >(const TDate& a, const TDate& b);
 | 
					  friend bool operator >(const TDate& a, const TDate& b);
 | 
				
			||||||
 | 
					  // @cmember Controlla se una data e' minore o ugaule ad un'altra
 | 
				
			||||||
  friend bool operator <=(const TDate& a, const TDate& b);
 | 
					  friend bool operator <=(const TDate& a, const TDate& b);
 | 
				
			||||||
 | 
					  // @cmember Controlla se una data e' maggiore o uguale ad un'altra
 | 
				
			||||||
  friend bool operator >=(const TDate& a, const TDate& b);
 | 
					  friend bool operator >=(const TDate& a, const TDate& b);
 | 
				
			||||||
 | 
					  // @cmember Controlla se 2 date sono uguali
 | 
				
			||||||
  friend bool operator ==(const TDate& a, const TDate& b);
 | 
					  friend bool operator ==(const TDate& a, const TDate& b);
 | 
				
			||||||
 | 
					  // @cmember Controlla se una 2 date sono diverse
 | 
				
			||||||
  friend bool operator !=(const TDate& a, const TDate& b);
 | 
					  friend bool operator !=(const TDate& a, const TDate& b);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  // @access Public Member
 | 
				
			||||||
public:
 | 
					public:
 | 
				
			||||||
  // @FPUB
 | 
					  // @cmember Ritorna la data in formato di stringa (anche in formato ANSI)
 | 
				
			||||||
  char* string(TDate_mgafmt year  = def, char sep = '-', TDate_mgafmt day = def, 
 | 
					  char* string(TDate_mgafmt year=def,char sep='-',TDate_mgafmt day=def,TDate_mgafmt month=def,TDate_order ord=gma_date) const ;
 | 
				
			||||||
               TDate_mgafmt month = def, TDate_order ord = gma_date) const ;
 | 
					 | 
				
			||||||
  
 | 
					  
 | 
				
			||||||
  // @DES Ritorna la data in formato di stringa (anche in formato ANSI)
 | 
					  // @cmember Ritorna il giorno
 | 
				
			||||||
  // @FPUB
 | 
					  int day() const ;
 | 
				
			||||||
  int     day() const ; // Ritorna il giorno
 | 
					  // @cmember Ritorna il mese
 | 
				
			||||||
  int     month() const ; // Ritorna il mese
 | 
					  int month() const ;
 | 
				
			||||||
  int     year() const ; // Ritorna l'anno
 | 
					  // @cmember Ritorna l'anno
 | 
				
			||||||
  int     wday() const ; // ritorna il giorno della settimana (0 = domenica)
 | 
					  int year() const ;
 | 
				
			||||||
  void    addmonth(int nmonth = 1); // Aggiunge dei mesi
 | 
					  // @cmember Ritorna il giorno della settimana (0 = domenica)
 | 
				
			||||||
  void    addyear(int nyear = 1); // Aggiunge degli anni
 | 
					  int wday() const ;
 | 
				
			||||||
  bool    ok() const; // Vero se la data e' corretta
 | 
					  // @cmember Aggiunge dei mesi
 | 
				
			||||||
  static  bool isdate(const char*); // Vero se la stringa passata e' una data corretta
 | 
					  void addmonth(int nmonth = 1);
 | 
				
			||||||
 | 
					  // @cmember Aggiunge degli anni
 | 
				
			||||||
 | 
					  void addyear(int nyear = 1);
 | 
				
			||||||
 | 
					  // @cmember Controlla se si tratta di una data corretta
 | 
				
			||||||
 | 
					  bool ok() const;
 | 
				
			||||||
 | 
					  // @cmember Controlla se la stringa passata e' una data corretta
 | 
				
			||||||
 | 
					  static bool isdate(const char*);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  // @cmember Ritorna l'ultimo giorno possibile del mese
 | 
				
			||||||
  static int last_day(int month, int year);
 | 
					  static int last_day(int month, int year);
 | 
				
			||||||
 | 
					  // @cmember Controlla se il giorno e' l'ultimo del mese
 | 
				
			||||||
  bool is_end_month();
 | 
					  bool is_end_month();
 | 
				
			||||||
  void    set_end_month();        // setta il giorno del mese all'ultimo possibile
 | 
					  // @cmember Setta il giorno del mese all'ultimo possibile
 | 
				
			||||||
  // implementando la filastrocchina
 | 
					  void set_end_month();
 | 
				
			||||||
  
 | 
					  
 | 
				
			||||||
 | 
					  // @cmember Setta la il giorno
 | 
				
			||||||
  void set_day(int n);
 | 
					  void set_day(int n);
 | 
				
			||||||
 | 
					  // @cmember Setta il mese
 | 
				
			||||||
  void set_month(int n);
 | 
					  void set_month(int n);
 | 
				
			||||||
 | 
					  // @cmember Setta l'anno
 | 
				
			||||||
  void set_year(int n);
 | 
					  void set_year(int n);
 | 
				
			||||||
 | 
					  // @cmember Permette di stabilire il criterio di formattazione delle date
 | 
				
			||||||
  void set_format(const char* f);
 | 
					  void set_format(const char* f);
 | 
				
			||||||
  
 | 
					  
 | 
				
			||||||
  // @DES Ridefiniti gli operatori: += -= ++ -- >> e <<
 | 
					  // @cmember Incrementa la data di un certo numero di giorni
 | 
				
			||||||
  // @FPUB
 | 
					  TDate& operator +=(const long nday)
 | 
				
			||||||
  TDate& operator +=(const long nday)  { _val += nday; return *this; }
 | 
					  { _val += nday; return *this; }
 | 
				
			||||||
  TDate& operator -=(const long   nday)  { _val -= nday; return *this; }
 | 
					  // @cmember Decrementa la data di un certo numero di giorni
 | 
				
			||||||
  TDate& operator ++()  { _val++; return *this; }
 | 
					  TDate& operator -=(const long nday)
 | 
				
			||||||
  TDate& operator --()  { _val--; return *this; }
 | 
					  { _val -= nday; return *this; }
 | 
				
			||||||
 | 
					  // @cmember Incrementa la data di un giorno
 | 
				
			||||||
 | 
					  TDate& operator ++()
 | 
				
			||||||
 | 
					  { _val++; return *this; }
 | 
				
			||||||
 | 
					  // @cmember Decrementa la data di un giorno
 | 
				
			||||||
 | 
					  TDate& operator --()
 | 
				
			||||||
 | 
					  { _val--; return *this; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  // @cmember Stampa sull'output passato la data
 | 
				
			||||||
  void print_on(ostream& out) const ;
 | 
					  void print_on(ostream& out) const ;
 | 
				
			||||||
 | 
					  // @cmember Legge dall'input passato la data
 | 
				
			||||||
  void read_from(istream& in) ;
 | 
					  void read_from(istream& in) ;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  operator long() const { return _val; }
 | 
					  // @cmember Ritorna la data in valore numerico
 | 
				
			||||||
 | 
					  operator long() const
 | 
				
			||||||
 | 
					  { return _val; }
 | 
				
			||||||
  
 | 
					  
 | 
				
			||||||
  operator long*() { return &_val;}
 | 
					  // @cmember Ritorna l'indirizzo della data in valore numerico
 | 
				
			||||||
 | 
					  operator long*()
 | 
				
			||||||
 | 
					  { return &_val;}
 | 
				
			||||||
  
 | 
					  
 | 
				
			||||||
 | 
					  // @cmember void | operator const char*() const | | Ritorna la data in formato stringa (chiama <mf TDate::String>)
 | 
				
			||||||
  operator const char*() const ;
 | 
					  operator const char*() const ;
 | 
				
			||||||
 | 
					  // @cmember Assegna la data passata come stringa
 | 
				
			||||||
  TDate& operator =(const char* s);
 | 
					  TDate& operator =(const char* s);
 | 
				
			||||||
  TDate& operator =(long val) { _val = val; return *this;}
 | 
					  // @cmember Assegna la data passato come valore numerico
 | 
				
			||||||
  TDate& operator =(const TDate& d) { _val = d._val; return *this;}
 | 
					  TDate& operator =(long val)
 | 
				
			||||||
 | 
					  { _val = val; return *this;}
 | 
				
			||||||
 | 
					  // @cmember Assegna la data passata come oggetto data
 | 
				
			||||||
 | 
					  TDate& operator =(const TDate& d)
 | 
				
			||||||
 | 
					  { _val = d._val; return *this;}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  // @cmember Costruttore
 | 
				
			||||||
  TDate(const TDate& d);
 | 
					  TDate(const TDate& d);
 | 
				
			||||||
 | 
					  // @cmember Costruttore
 | 
				
			||||||
  TDate(long l);
 | 
					  TDate(long l);
 | 
				
			||||||
 | 
					  // @cmember Costruttore
 | 
				
			||||||
  TDate(const char* s);
 | 
					  TDate(const char* s);
 | 
				
			||||||
 | 
					  // @cmember Costruttore
 | 
				
			||||||
  TDate(int day = 0, int month = 0, int year = 0);
 | 
					  TDate(int day = 0, int month = 0, int year = 0);
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// @FPUB
 | 
					 | 
				
			||||||
TDate& operator +(const TDate& a, long nday) ;
 | 
					TDate& operator +(const TDate& a, long nday) ;
 | 
				
			||||||
TDate& operator +(const long nday, const TDate& b) ;
 | 
					TDate& operator +(const long nday, const TDate& b) ;
 | 
				
			||||||
TDate& operator -(const TDate& a, long nday) ;
 | 
					TDate& operator -(const TDate& a, long nday) ;
 | 
				
			||||||
inline bool operator <(const TDate& a, const TDate& b) { return a._val < b._val;}
 | 
					 | 
				
			||||||
inline bool operator >(const TDate& a, const TDate& b) { return a._val > b._val;}
 | 
					 | 
				
			||||||
inline bool operator <=(const TDate& a, const TDate& b) { return a._val <= b._val;}
 | 
					 | 
				
			||||||
inline bool operator >=(const TDate& a, const TDate& b) { return a._val >= b._val;}
 | 
					 | 
				
			||||||
inline bool operator ==(const TDate& a, const TDate& b) { return a._val == b._val;}
 | 
					 | 
				
			||||||
inline bool operator !=(const TDate& a, const TDate& b) { return a._val != b._val;}
 | 
					 | 
				
			||||||
void swap(TDate& a, TDate& b) ; // Scambia la data a con la data b
 | 
					 | 
				
			||||||
const TDate& fnc_min(const TDate& a, const TDate& b) ; // Ritorna la data piu' piccola tra a e b
 | 
					 | 
				
			||||||
const TDate& fnc_max(const TDate& a, const TDate& b) ; // Ritorna la data piu' grande tra a e b
 | 
					 | 
				
			||||||
// @END
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
const char* itom(byte month);     // Ritorna il nome del mese (1-12)
 | 
					 | 
				
			||||||
const char* itow(byte dayofweek); // Ritorna il nome del giorno (1-7)
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
// @DPUB
 | 
					
 | 
				
			||||||
 | 
					// @func inline bool | operator <gt> | Controlla se una data e' minore di un'altra
 | 
				
			||||||
 | 
					//
 | 
				
			||||||
 | 
					// @rdesc Ritorna i seguenti valori
 | 
				
			||||||
 | 
					//
 | 
				
			||||||
 | 
					// @flag TRUE | Se <p a> e' maggiore di <p b>
 | 
				
			||||||
 | 
					// @flag FALSE | Se <p a> non e' maggiore di <p b>
 | 
				
			||||||
 | 
					inline bool operator <(
 | 
				
			||||||
 | 
					  const TDate& a,  // @parm Prima data da confrontare
 | 
				
			||||||
 | 
					  const TDate& b)  // @parm Secondo data da confrontare
 | 
				
			||||||
 | 
					{ return a._val < b._val;}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// @func inline bool | operator <lt> | Controlla se una data e' maggiore di un'altra
 | 
				
			||||||
 | 
					//
 | 
				
			||||||
 | 
					// @rdesc Ritorna i seguenti valori
 | 
				
			||||||
 | 
					//
 | 
				
			||||||
 | 
					// @flag TRUE | Se <p a> e' minore di <p b>
 | 
				
			||||||
 | 
					// @flag FALSE | Se <p a> non e' minore di <p b>
 | 
				
			||||||
 | 
					inline bool operator >(
 | 
				
			||||||
 | 
					  const TDate& a,  // @parm Prima data da confrontare
 | 
				
			||||||
 | 
					  const TDate& b)  // @parm Secondo data da confrontare
 | 
				
			||||||
 | 
					{ return a._val > b._val;}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// @func inline bool | operator <lt>= | Controlla se una data e' minore o ugaule ad un'altra
 | 
				
			||||||
 | 
					//
 | 
				
			||||||
 | 
					// @rdesc Ritorna i seguenti valori
 | 
				
			||||||
 | 
					//
 | 
				
			||||||
 | 
					// @flag TRUE | Se <p a> e' minore o uguale a <p b>
 | 
				
			||||||
 | 
					// @flag FALSE | Se <p a> e' maggiore di <p b>
 | 
				
			||||||
 | 
					inline bool operator <=(
 | 
				
			||||||
 | 
					  const TDate& a,  // @parm Prima data da confrontare
 | 
				
			||||||
 | 
					  const TDate& b)  // @parm Secondo data da confrontare
 | 
				
			||||||
 | 
					{ return a._val <= b._val;}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// @func inline bool | operator <gt>= | Controlla se una data e' maggiore o uguale ad un'altra
 | 
				
			||||||
 | 
					//
 | 
				
			||||||
 | 
					// @rdesc Ritorna i seguenti valori
 | 
				
			||||||
 | 
					//
 | 
				
			||||||
 | 
					// @flag TRUE | Se <p a> e' maggiore o ugaule a <p b>
 | 
				
			||||||
 | 
					// @flag FALSE | Se <p a> e' minore di <p b>
 | 
				
			||||||
 | 
					inline bool operator >=(
 | 
				
			||||||
 | 
					  const TDate& a,  // @parm Prima data da confrontare
 | 
				
			||||||
 | 
					  const TDate& b)  // @parm Secondo data da confrontare
 | 
				
			||||||
 | 
					{ return a._val >= b._val;}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// @func inline bool | operator == | Controlla se 2 date sono uguali
 | 
				
			||||||
 | 
					//
 | 
				
			||||||
 | 
					// @rdesc Ritorna i seguenti valori
 | 
				
			||||||
 | 
					//
 | 
				
			||||||
 | 
					// @flag TRUE | Se le due date sono uguali
 | 
				
			||||||
 | 
					// @flag FALSE | Se le due date non sono uguali
 | 
				
			||||||
 | 
					inline bool operator ==(
 | 
				
			||||||
 | 
					  const TDate& a,  // @parm Prima data da confrontare
 | 
				
			||||||
 | 
					  const TDate& b)  // @parm Secondo data da confrontare
 | 
				
			||||||
 | 
					{ return a._val == b._val;}
 | 
				
			||||||
 | 
					// @func inline bool | operator != | Controlla se 2 date sono diverse
 | 
				
			||||||
 | 
					//
 | 
				
			||||||
 | 
					// @rdesc Ritorna i seguenti valori
 | 
				
			||||||
 | 
					//
 | 
				
			||||||
 | 
					// @flag TRUE | Se le due date sono diverse
 | 
				
			||||||
 | 
					// @flag FALSE | Se le due date non sono diverse
 | 
				
			||||||
 | 
					inline bool operator !=(
 | 
				
			||||||
 | 
					  const TDate& a,  // @parm Prima data da confrontare
 | 
				
			||||||
 | 
					  const TDate& b)  // @parm Secondo data da confrontare
 | 
				
			||||||
 | 
					{ return a._val != b._val;}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void swap(TDate& a, TDate& b) ;
 | 
				
			||||||
 | 
					const TDate& fnc_min(const TDate& a, const TDate& b) ;
 | 
				
			||||||
 | 
					const TDate& fnc_max(const TDate& a, const TDate& b) ;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					const char* itom(byte month);
 | 
				
			||||||
 | 
					const char* itow(byte dayofweek);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const TDate botime(0,0,0), eotime(31,12,2050);
 | 
					const TDate botime(0,0,0), eotime(31,12,2050);
 | 
				
			||||||
// @END
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
#endif // __DATE_H
 | 
					#endif // __DATE_H
 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user