nuovo costruttore a TTotal ed una nuova add(). git-svn-id: svn://10.65.10.50/trunk@2469 c028cbd2-c16b-5b4b-a496-9718f37d4682
		
			
				
	
	
		
			79 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			C++
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			79 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			C++
		
	
	
		
			Executable File
		
	
	
	
	
| 
 | |
| #include "sc2102.h"
 | |
| 
 | |
| ///////////////////////////////////////////////////////////
 | |
| // Totalizzatore
 | |
| ///////////////////////////////////////////////////////////
 | |
| 
 | |
| TTotal::TTotal(const TImporto& imp, const real& sca, 
 | |
|                const real& esp, const real& lit)
 | |
|       : _importo(imp), _scaduto(sca), _esposto(esp), _importo_lire(lit)
 | |
| { }      
 | |
| 
 | |
| TTotal::TTotal(const TImporto& uns)
 | |
|       : _unassigned(uns)
 | |
| { }      
 | |
| 
 | |
| void TTotalizer::add(const TImporto& imp, const real& sca,
 | |
|                      const real& esp, const real& lit, const TString& val)
 | |
| {              
 | |
|   TString16 codice(val);
 | |
|   if (codice == "LIT")
 | |
|     codice.cut(0);
 | |
|    
 | |
|   TObject* obj = objptr(codice);
 | |
|   if (obj != NULL)
 | |
|   {
 | |
|     TTotal& tot = (TTotal&)*obj;
 | |
|     tot.importo() += imp;
 | |
|     tot.scaduto() += sca;
 | |
|     tot.esposto() += esp;
 | |
|     tot.importo_lire() += lit;
 | |
|   }
 | |
|   else
 | |
|   {                     
 | |
|     obj = new TTotal(imp, sca, esp, lit);
 | |
|     TAssoc_array::add(codice, obj);
 | |
|   }
 | |
| }
 | |
| 
 | |
| void TTotalizer::add(const TImporto& uns, const TString& val)
 | |
| {              
 | |
|   TString16 codice(val);
 | |
|   if (codice == "LIT")
 | |
|     codice.cut(0);
 | |
|    
 | |
|   TObject* obj = objptr(codice);
 | |
|   if (obj != NULL)
 | |
|   {
 | |
|     TTotal& tot = (TTotal&)*obj;
 | |
|     tot.unassigned() += uns;
 | |
|   }
 | |
|   else
 | |
|   {                     
 | |
|     obj = new TTotal(uns);
 | |
|     TAssoc_array::add(codice, obj);
 | |
|   }
 | |
| }
 | |
| 
 | |
| ///////////////////////////////////////////////////////////
 | |
| // TFilearray
 | |
| ///////////////////////////////////////////////////////////
 | |
| 
 | |
| void TFile_array::open(int logicnum, ...)  
 | |
| {  
 | |
|   va_list marker;
 | |
|   va_start(marker, logicnum);
 | |
|   while (logicnum > 0)
 | |
|   {
 | |
|     CHECKD(_file.objptr(logicnum) == NULL, "File gia' aperto: ", logicnum);
 | |
|     _file.add(new TLocalisamfile(logicnum), logicnum);
 | |
|     logicnum = va_arg(marker, int);
 | |
|   }
 | |
| }
 | |
| 
 | |
| void TFile_array::close()
 | |
| {
 | |
|   _file.destroy();
 | |
| }
 |