| 
    SNAP Library 2.0, Developer Reference
    2013-05-13 16:33:57
    
   SNAP, a general purpose, high performance system for analysis and manipulation of large networks 
   | 
  
  
  
 
#include <fl.h>


Public Member Functions | |
| TFOut (const TStr &_FNm, const bool &Append=false) | |
| TFOut (const TStr &_FNm, const bool &Append, bool &OpenedP) | |
| ~TFOut () | |
| int | PutCh (const char &Ch) | 
| int | PutBf (const void *LBf, const TSize &LBfL) | 
| void | Flush () | 
| TFileId | GetFileId () const | 
Static Public Member Functions | |
| static PSOut | New (const TStr &FNm, const bool &Append=false) | 
| static PSOut | New (const TStr &FNm, const bool &Append, bool &OpenedP) | 
Private Member Functions | |
| void | FlushBf () | 
| TFOut () | |
| TFOut (const TFOut &) | |
| TFOut & | operator= (const TFOut &) | 
Private Attributes | |
| TFileId | FileId | 
| char * | Bf | 
| TSize | BfL | 
Static Private Attributes | |
| static const TSize | MxBfL = 16*1024 | 
| TFOut::TFOut | ( | ) |  [private] | 
        
| TFOut::TFOut | ( | const TFOut & | ) |  [private] | 
        
| TFOut::TFOut | ( | const TStr & | _FNm, | 
| const bool & | Append = false  | 
        ||
| ) | 
Definition at line 410 of file fl.cpp.
References Bf, BfL, TStr::CStr(), EAssertR, FileId, TStr::GetUc(), and MxBfL.
: TSBase(FNm.CStr()), TSOut(FNm), FileId(NULL), Bf(NULL), BfL(0){ if (FNm.GetUc()=="CON"){ FileId=stdout; } else { if (Append){FileId=fopen(FNm.CStr(), "a+b");} else {FileId=fopen(FNm.CStr(), "w+b");} EAssertR(FileId!=NULL, "Can not open file '"+FNm+"'."); Bf=new char[MxBfL]; BfL=0; } }

| TFOut::TFOut | ( | const TStr & | _FNm, | 
| const bool & | Append, | ||
| bool & | OpenedP | ||
| ) | 
Definition at line 422 of file fl.cpp.
References Bf, BfL, TStr::CStr(), FileId, TStr::GetUc(), and MxBfL.
: TSBase(FNm.CStr()), TSOut(FNm), FileId(NULL), Bf(NULL), BfL(0){ if (FNm.GetUc()=="CON"){ FileId=stdout; } else { if (Append){FileId=fopen(FNm.CStr(), "a+b");} else {FileId=fopen(FNm.CStr(), "w+b");} OpenedP=(FileId!=NULL); if (OpenedP){ Bf=new char[MxBfL]; BfL=0;} } }

| TFOut::~TFOut | ( | ) | 
| void TFOut::Flush | ( | ) |  [virtual] | 
        
| void TFOut::FlushBf | ( | ) |  [private] | 
        
Definition at line 403 of file fl.cpp.
References Bf, BfL, EAssertR, FileId, and TSBase::GetSNm().
Referenced by Flush(), PutCh(), and ~TFOut().
                   {
  EAssertR(
   fwrite(Bf, 1, BfL, FileId)==BfL,
   "Error writting to the file '"+GetSNm()+"'.");
  BfL=0;
}


| TFileId TFOut::GetFileId | ( | ) |  const [inline, virtual] | 
        
| PSOut TFOut::New | ( | const TStr & | FNm, | 
| const bool & | Append = false  | 
        ||
| ) |  [static] | 
        
Definition at line 435 of file fl.cpp.
References TFOut().
Referenced by TStrPool::Save(), TUniChDb::SaveBin(), TLAMisc::SaveMatlabTFltV(), TLAMisc::SaveMatlabTFltVV(), TLAMisc::SaveMatlabTFltVVCol(), TLAMisc::SaveMatlabTFltVVMjrSubMtrx(), TLAMisc::SaveMatlabTIntV(), TXmlDoc::SaveTxt(), TStr::SaveTxt(), TUniChDb::Test(), and TPreproc::TPreproc().


| PSOut TFOut::New | ( | const TStr & | FNm, | 
| const bool & | Append, | ||
| bool & | OpenedP | ||
| ) |  [static] | 
        
| int TFOut::PutBf | ( | const void * | LBf, | 
| const TSize & | LBfL | ||
| ) |  [virtual] | 
        
Implements TSOut.
Definition at line 456 of file fl.cpp.
References Bf, BfL, MxBfL, and PutCh().
                                                  {
  int LBfS=0;
  if (BfL+LBfL>MxBfL){
    for (TSize LBfC=0; LBfC<LBfL; LBfC++){
      LBfS+=PutCh(((char*)LBf)[LBfC]);}
  } else {
    for (TSize LBfC=0; LBfC<LBfL; LBfC++){
      LBfS+=(Bf[BfL++]=((char*)LBf)[LBfC]);}
  }
  return LBfS;
}

| int TFOut::PutCh | ( | const char & | Ch | ) |  [virtual] | 
        
char* TFOut::Bf [private] | 
        
TSize TFOut::BfL [private] | 
        
TFileId TFOut::FileId [private] | 
        
const TSize TFOut::MxBfL = 16*1024 [static, private] |