72 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			C++
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			72 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			C++
		
	
	
		
			Executable File
		
	
	
	
	
#ifndef __ARCHIVES_H
 | 
						|
#define __ARCHIVES_H
 | 
						|
 | 
						|
#ifndef __STDIO_H
 | 
						|
#include <stdio.h>
 | 
						|
#endif
 | 
						|
 | 
						|
#ifndef __STRINGS_H
 | 
						|
#include <strings.h>
 | 
						|
#endif
 | 
						|
 | 
						|
///////////////////////////////////////////////////////////
 | 
						|
// TArchive
 | 
						|
///////////////////////////////////////////////////////////
 | 
						|
 | 
						|
class ALArchive;
 | 
						|
 | 
						|
// @doc EXTERNAL
 | 
						|
 | 
						|
// @class TArchive | Classe per effettuare compressione e archiviazione di dati
 | 
						|
//
 | 
						|
// @base public | TObject
 | 
						|
class TArchive : public TObject
 | 
						|
 | 
						|
// @author:(INTERNAL) Angelo
 | 
						|
 | 
						|
// @access:(INTERNAL) Private Member
 | 
						|
{
 | 
						|
  // @ccost:(INTERNAL) BUFSIZE | 4096*7 | Dimensione del buffer di lettura/scrittura su dischetto
 | 
						|
  enum { BUFSIZE = 4096*7 };
 | 
						|
  // @cmember:(INTERNAL) Oggetto per la gestione di archivi (vedi <c ALArchive>)
 | 
						|
  ALArchive* _arc;
 | 
						|
 | 
						|
// @access Protected Member
 | 
						|
protected:
 | 
						|
  // @cmember NON IMPLEMENTATA
 | 
						|
  KEY query() const;
 | 
						|
  // @cmember Funzione per richiedere all'utente il dischetto e per controllare la
 | 
						|
  //					corretta sequenza dei dischetti da inserire
 | 
						|
  FILE* ask_disk(TFilename& name, int disk, char floppy, bool lettura) const;
 | 
						|
  
 | 
						|
  // @cmember Ritorna la dimensione del file <p f>
 | 
						|
  long fsize(FILE* f) const;                          
 | 
						|
  // @cmember Spezza il file in modo da farlo stare sul dischetto
 | 
						|
  bool fsplit(const char* filename, char floppy, const char* desc = "") const;
 | 
						|
  // @cmember Ricostruisce il file spezzato
 | 
						|
  bool fbuild(const char* filename, char floppy) const;
 | 
						|
  
 | 
						|
  // @cmember Ricostruisce la lista dei file contenuti nel backup
 | 
						|
  int build_backup_list(long firm, TString_array& fl) const;
 | 
						|
  // @cmember Costruisce la lista delle directory da scompattare
 | 
						|
  int build_restore_list(long firm, char floppy, TString_array& fl) const;
 | 
						|
 | 
						|
// @access Public Member
 | 
						|
public:   
 | 
						|
  // @cmember Effettua il backup della directory
 | 
						|
  bool backup(const char* dir, char floppy, const char* desc, bool pr_set=TRUE);
 | 
						|
  // @cmember Effettua il backup della ditta
 | 
						|
  bool backup(long firm, char floppy, const char* desc, bool pr_set=TRUE);
 | 
						|
 | 
						|
  // @cmember Effettua il restore della directory
 | 
						|
  bool restore(const char* dir, char floppy, bool temp, bool pr_set=TRUE);
 | 
						|
  // @cmember Effettua il restore della ditta
 | 
						|
  bool restore(long firm, char floppy, bool temp, bool pr_set=TRUE);
 | 
						|
 | 
						|
  // @cmember Interrompe le operazioni
 | 
						|
  void stop_job();
 | 
						|
};           
 | 
						|
 | 
						|
#endif            
 | 
						|
 |