Rene Brun
#include <TObject.h>
#include <fstream.h>
class DataManager {
protected:
  ofstream Log;
  ifstream ODF;
  
public:
  DataManager();
  DataManager(char*);
  DataManager(const DataManager &);
  void ConnectLog(char*);
  void ConnectODF(char*);
  void DisConnectLog();
  void DisConnectODF();
  ClassDef(DataManager,0)
};
Frederic MACHEFERT wrote:
> 
>         Hello,
> 
> I try to create a shared library containing several personal classes and I
> have some problems including a class which is supposed to manage
> input/output on disk. The compilation of the code is correct but the
> dictionary I build doesn't compile and produce the following error message
> :
> 
> CC: "Dictionary.cxx", line 158: error: void ofstream::ofstream(const class
> ofstream&) cannot access void ios::ios(const ios&): private member (1655)
> CC: "Dictionary.cxx", line 158: error: void fstreambase::fstreambase(const
> class fstreambase&) cannot access void ios::ios(const ios&): private
> member (1655)
> CC: "Dictionary.cxx", line 158: error: void filebuf::filebuf(const class
> filebuf&) cannot access void streambuf::streambuf(const streambuf&):
> private member (1655)
> CC: "Dictionary.cxx", line 158: error: void ostream::ostream(const class
> ostream&) cannot access void ios::ios(const ios&): private member (1655)
> CC: "Dictionary.cxx", line 158: error: void ifstream::ifstream(const class
> ifstream&) cannot access void ios::ios(const ios&): private member (1655)
> CC: "Dictionary.cxx", line 158: error: void istream::istream(const class
> istream&) cannot access void ios::ios(const ios&): private member (1655)
> 
> Although I included the iostream.h, iomanip.h and fstream.h header files.
> I work on HP-UX10.20 and the root version is 2/20.06 on CC compiler.
> 
> Here is the header file of my class :
> class DataManager{
> protected:
>   ofstream Log;
>   ifstream ODF;
> public:
>   DataManager(char*);
>   void ConnectLog(char*);
>   void ConnectODF(char*);
>   void DisConnectLog();
>   void DisConnectODF();
>   ClassDef(DataManager,0)
> };
> 
> and this is the definition of one of my member functions :
> void DataManager::ConnectLog(char *name){
>   Log.open(name,ios::out);
>   if(Log.bad()){
>     cerr<<"Can't open Log file "<<name<<"\n";
>     exit(0);
>   }
>   Log<<"Connecting Log File ..."<<name<<"\n";
>   cout<<"Connecting Log File ... "<<name<<"\n";
> }
> 
> Thank you for your help,
> Frederic.
> 
> -------- Frederic Machefert ------------
> DAPNIA/SPP - Bat. 141 - Piece 26B
> CEA-SACLAY - 91191 GIF-SUR-YVETTE Cedex - FRANCE
> tel: (33) 01 69 08 46 03  fax: (33) 01 69 08 36 49
> Frederic.Machefert@cea.fr