Gaudi Framework, version v23r0

Home   Generated: Mon Jan 30 2012
Public Member Functions | Private Attributes

PipeReader Class Reference

Collaboration diagram for PipeReader:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 PipeReader (const char *cmd)
 ~PipeReader (void)
std::istringstreamoutput (void)

Private Attributes

FILEpipe
std::istringstreamiss

Detailed Description

Definition at line 88 of file pfm_gen_analysis.cpp.


Constructor & Destructor Documentation

PipeReader::PipeReader ( const char *  cmd ) [inline]

Definition at line 91 of file pfm_gen_analysis.cpp.

  {
   pipe = popen(cmd, "r");
   if(!pipe)
   {
    printf("Cannot open pipe. Exiting...\n");
    exit(1);
   }
   char buffer[PIPE_BUFFER_LENGTH];
   bzero(buffer, PIPE_BUFFER_LENGTH);
   std::string result = "";
   while(!feof(pipe))
   {
    if(fgets(buffer, PIPE_BUFFER_LENGTH, pipe)!=NULL)
    {
     result += buffer;
    }
    bzero(buffer, PIPE_BUFFER_LENGTH);
   }
   iss = new std::istringstream(result, std::istringstream::in);
  }
PipeReader::~PipeReader ( void   ) [inline]

Definition at line 113 of file pfm_gen_analysis.cpp.

  {
   pclose(pipe);
   delete iss;
  }

Member Function Documentation

std::istringstream& PipeReader::output ( void   ) [inline]

Definition at line 119 of file pfm_gen_analysis.cpp.

  {
   return *iss;
  }

Member Data Documentation

Definition at line 125 of file pfm_gen_analysis.cpp.

FILE* PipeReader::pipe [private]

Definition at line 124 of file pfm_gen_analysis.cpp.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines

Generated at Mon Jan 30 2012 13:53:20 for Gaudi Framework, version v23r0 by Doxygen version 1.7.2 written by Dimitri van Heesch, © 1997-2004