gem5  v20.1.0.0
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
OutputFile< StreamType > Class Template Reference

#include <output.hh>

Inheritance diagram for OutputFile< StreamType >:
OutputStream

Public Types

typedef StreamType stream_type_t
 

Public Member Functions

virtual ~OutputFile ()
 
bool recreateable () const override
 Can the file be recreated if the output directory is moved? More...
 
- Public Member Functions inherited from OutputStream
virtual ~OutputStream ()
 
std::ostream * stream () const
 Get the output underlying output stream. More...
 
const std::string & name () const
 Get the file name in the output directory. More...
 

Protected Member Functions

 OutputFile (const OutputDirectory &dir, const std::string &name, std::ios_base::openmode mode, bool recreateable)
 
 OutputFile (const OutputFile< StreamType > &f)
 
void relocate (const OutputDirectory &dir) override
 Re-create the file in a new location if it is relocatable. More...
 
- Protected Member Functions inherited from OutputStream
 OutputStream (const std::string &name, std::ostream *stream)
 Wrap an existing stream. More...
 
 OutputStream (const OutputStream &f)
 

Protected Attributes

const std::ios_base::openmode _mode
 File mode when opened. More...
 
const bool _recreateable
 Can the file be recreated in a new location? More...
 
stream_type_t *const _fstream
 Pointer to the file stream. More...
 
- Protected Attributes inherited from OutputStream
const std::string _name
 Name in output directory. More...
 
std::ostream *const _stream
 Underlying output stream. More...
 

Friends

class OutputDirectory
 

Detailed Description

template<class StreamType>
class OutputFile< StreamType >

Definition at line 93 of file output.hh.

Member Typedef Documentation

◆ stream_type_t

template<class StreamType >
typedef StreamType OutputFile< StreamType >::stream_type_t

Definition at line 97 of file output.hh.

Constructor & Destructor Documentation

◆ ~OutputFile()

template<class StreamType >
OutputFile< StreamType >::~OutputFile
virtual

Definition at line 95 of file output.cc.

◆ OutputFile() [1/2]

template<class StreamType >
OutputFile< StreamType >::OutputFile ( const OutputDirectory dir,
const std::string &  name,
std::ios_base::openmode  mode,
bool  recreateable 
)
protected

◆ OutputFile() [2/2]

template<class StreamType >
OutputFile< StreamType >::OutputFile ( const OutputFile< StreamType > &  f)
protected

Member Function Documentation

◆ recreateable()

template<class StreamType >
bool OutputFile< StreamType >::recreateable ( ) const
inlineoverridevirtual

Can the file be recreated if the output directory is moved?

Returns
true if the file will be created in the new location, false otherwise.

Reimplemented from OutputStream.

Definition at line 107 of file output.hh.

References OutputFile< StreamType >::_recreateable.

◆ relocate()

template<class StreamType >
void OutputFile< StreamType >::relocate ( const OutputDirectory dir)
overrideprotectedvirtual

Re-create the file in a new location if it is relocatable.

Reimplemented from OutputStream.

Definition at line 103 of file output.cc.

References OutputDirectory::resolve().

Friends And Related Function Documentation

◆ OutputDirectory

template<class StreamType >
friend class OutputDirectory
friend

Definition at line 110 of file output.hh.

Member Data Documentation

◆ _fstream

template<class StreamType >
stream_type_t* const OutputFile< StreamType >::_fstream
protected

Pointer to the file stream.

Definition at line 130 of file output.hh.

Referenced by OutputFile< StreamType >::OutputFile().

◆ _mode

template<class StreamType >
const std::ios_base::openmode OutputFile< StreamType >::_mode
protected

File mode when opened.

Definition at line 124 of file output.hh.

Referenced by OutputFile< StreamType >::OutputFile().

◆ _recreateable

template<class StreamType >
const bool OutputFile< StreamType >::_recreateable
protected

Can the file be recreated in a new location?

Definition at line 127 of file output.hh.

Referenced by OutputFile< StreamType >::recreateable().


The documentation for this class was generated from the following files:

Generated on Wed Sep 30 2020 14:02:28 for gem5 by doxygen 1.8.17