// FichierIndexe.h: interface for the FichierIndexe class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_FICHIERINDEXE_H__09A2B07C_A4C2_4396_A99D_F3065F5721EE__INCLUDED_)
#define AFX_FICHIERINDEXE_H__09A2B07C_A4C2_4396_A99D_F3065F5721EE__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include "RecordNode.h"
#include <string>
#include <stdio.h>
#include <fstream>

using namespace std;

class FichierIndexe  
{

protected:
		char* chercherDansIndexe(int /*ou char* */NumCompte);
		string fileName;

		fstream Index;
		fstream fileStream;

		RecordNode* First;		
		RecordNode* Last;
		int RecordNum;

public:
	FichierIndexe(string);
	bool ouvrir();
	bool fermer();

	//retourne faux si indexe existe pas, appele creeIndex
	bool chargerIndexe();
	bool sauvegarderIndex();
	bool creeIndex();
	
	//Retourne tous les enregistrements associe au compte
	char* rechercheEnregistrement(int /*ou char* */NumCompte);
	
	//faux si enregistrement double ou mauvais format
	bool ajoutEnregistrement(char*);
	bool supprimerEnregistrement(int /*ou char* */NumCompte);
	
	//faux si fichier n'existe pas
	bool miseajourEnregistrement(int /*ou char*/ );
	virtual ~FichierIndexe();

};

#endif // !defined(AFX_FICHIERINDEXE_H__09A2B07C_A4C2_4396_A99D_F3065F5721EE__INCLUDED_)
