Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

base::File Class Reference

Inheritance diagram for base::File:

Inheritance graph
[legend]
Collaboration diagram for base::File:

Collaboration graph
[legend]
List of all members.

Public Member Functions

virtual ~File ()
virtual String className () const
virtual Objectclone () const
virtual String extension () const
 the file's extension (e.g. 'png')

virtual std::istream & istream () const throw (io_error)
virtual std::ostream & ostream () const throw (io_error)
virtual std::iostream & iostream (std::iostream::openmode mode=(std::iostream::in|std::iostream::out)) const throw (io_error)
virtual void close () const throw (io_error)
 close the file (can be re-opened again via istream/ostream/iostream() )

virtual bool isDirectory () const
virtual bool operator== (const VEntry &e) const
virtual const PathName path () const
virtual const PathName name () const
virtual const PathName pathName () const
virtual bool isSameKindAs (const ReferencedObject &) const
virtual bool isSameKindAs (const Object &) const
void reference () const
bool unreference () const
const int referenceCount () const
void enableOnUnreferenceCall (bool enabled)
virtual void onUnreference () const

Protected Member Functions

void open (std::iostream::openmode mode) const throw (path_not_found, io_error)
 File (const File &f)
 File (const PathName &pathname) throw (path_not_found, io_error)
 File (const String &pathname) throw (path_not_found, io_error, std::invalid_argument)

Protected Attributes

bool opened
std::iostream::openmode mode
std::fstream * fileStream
PathName pathname
int _refCount
bool onUnreferenceEnabled

Friends

class Directory
class StdFileSystem
class VFileSystem
class VFile
class VDirectory

Constructor & Destructor Documentation

virtual base::File::~File  )  [virtual]
 

base::File::File const File f  )  [inline, protected]
 

Definition at line 59 of file File.

References f, fileStream, and opened.

Referenced by clone().

base::File::File const PathName pathname  )  throw (path_not_found, io_error) [explicit, protected]
 

base::File::File const String pathname  )  throw (path_not_found, io_error, std::invalid_argument) [protected]
 


Member Function Documentation

virtual String base::File::className  )  const [inline, virtual]
 

return the name of the object's class type. Must be defined by derived classes.

Implements base::Object.

Definition at line 41 of file File.

References base::String.

Referenced by clone().

virtual Object& base::File::clone  )  const [inline, virtual]
 

Definition at line 42 of file File.

References className(), File(), and NewNamedObj.

virtual void base::File::close  )  const throw (io_error) [virtual]
 

close the file (can be re-opened again via istream/ostream/iostream() )

Implements base::VFile.

void base::Referenced::enableOnUnreferenceCall bool  enabled  )  [inline, inherited]
 

If enabled, each call to unreference() will also call virtual method onUnreference()

Definition at line 115 of file Referenced.

References base::Referenced::onUnreferenceEnabled.

virtual String base::File::extension  )  const [inline, virtual]
 

the file's extension (e.g. 'png')

Implements base::VFile.

Definition at line 44 of file File.

References base::PathName::extension(), and base::String.

virtual std::iostream& base::File::iostream std::iostream::openmode  mode = (std::iostream::in|std::iostream::out)  )  const throw (io_error) [virtual]
 

Implements base::VFile.

virtual bool base::VFile::isDirectory  )  const [inline, virtual, inherited]
 

Implements base::VEntry.

Definition at line 45 of file VFile.

virtual bool base::Object::isSameKindAs const Object  )  const [inline, virtual, inherited]
 

Definition at line 47 of file Object.

virtual bool base::ReferencedObject::isSameKindAs const ReferencedObject  )  const [inline, virtual, inherited]
 

Definition at line 52 of file ReferencedObject.

virtual std::istream& base::File::istream  )  const throw (io_error) [virtual]
 

Implements base::VFile.

virtual const PathName base::VEntry::name  )  const [inline, virtual, inherited]
 

Definition at line 45 of file VEntry.

References base::PathName::name(), and base::VEntry::pathname.

virtual void base::Referenced::onUnreference  )  const [inline, virtual, inherited]
 

Called by unreference() if enabled via enableOnUnreferenceCall(true). Typically overridden in subclasses that wish to know about unreference() calls - for example to handle manually breaking cyclic references

Reimplemented in robot::control::ControllableAdaptor::AdaptorControlInterface, and robot::control::ControllableAdaptor.

Definition at line 121 of file Referenced.

Referenced by base::Referenced::unreference().

void base::File::open std::iostream::openmode  mode  )  const throw (path_not_found, io_error) [protected]
 

virtual bool base::VEntry::operator== const VEntry e  )  const [inline, virtual, inherited]
 

Definition at line 41 of file VEntry.

References base::VEntry::pathname.

virtual std::ostream& base::File::ostream  )  const throw (io_error) [virtual]
 

Implements base::VFile.

virtual const PathName base::VEntry::path  )  const [inline, virtual, inherited]
 

Reimplemented in base::CacheFile.

Definition at line 44 of file VEntry.

References base::PathName::path(), and base::VEntry::pathname.

virtual const PathName base::VEntry::pathName  )  const [inline, virtual, inherited]
 

Reimplemented in base::CacheFile.

Definition at line 46 of file VEntry.

References base::VEntry::pathname.

void base::Referenced::reference  )  const [inline, inherited]
 

Increment the reference count by one, indicating that this object has another pointer which is referencing it.

Definition at line 65 of file Referenced.

References base::Referenced::_refCount.

const int base::Referenced::referenceCount  )  const [inline, inherited]
 

Return the number pointers currently referencing this object.

Definition at line 112 of file Referenced.

References base::Referenced::_refCount.

Referenced by robot::control::ControllableAdaptor::AdaptorControlInterface::onUnreference().

bool base::Referenced::unreference  )  const [inline, inherited]
 

Decrement the reference count by one, indicating that a pointer to this object is referencing it. If the refence count goes to zero, it is assumed that this object is nolonger referenced and is automatically deleted.

Definition at line 81 of file Referenced.

References base::Referenced::_refCount, Exception, base::Referenced::onUnreference(), and base::Referenced::onUnreferenceEnabled.


Friends And Related Function Documentation

friend class Directory [friend]
 

Definition at line 63 of file File.

friend class StdFileSystem [friend]
 

Definition at line 64 of file File.

friend class VDirectory [friend, inherited]
 

Definition at line 56 of file VEntry.

friend class VFile [friend, inherited]
 

Definition at line 57 of file VEntry.

friend class VFileSystem [friend, inherited]
 

Reimplemented from base::VEntry.

Reimplemented in base::CacheFile.

Definition at line 59 of file VFile.


Member Data Documentation

int base::Referenced::_refCount [mutable, protected, inherited]
 

Definition at line 136 of file Referenced.

Referenced by base::Referenced::reference(), base::Referenced::referenceCount(), base::Referenced::Referenced(), base::Referenced::unreference(), and base::Referenced::~Referenced().

std::fstream* base::File::fileStream [mutable, protected]
 

Definition at line 57 of file File.

Referenced by File().

std::iostream::openmode base::File::mode [mutable, protected]
 

Definition at line 56 of file File.

bool base::Referenced::onUnreferenceEnabled [protected, inherited]
 

Definition at line 137 of file Referenced.

Referenced by base::Referenced::enableOnUnreferenceCall(), base::Referenced::Referenced(), and base::Referenced::unreference().

bool base::File::opened [mutable, protected]
 

Definition at line 55 of file File.

Referenced by File().

PathName base::VEntry::pathname [protected, inherited]
 

Definition at line 49 of file VEntry.

Referenced by base::VEntry::name(), base::VEntry::operator=(), base::VEntry::operator==(), base::VEntry::path(), base::VEntry::pathName(), and base::VEntry::VEntry().


The documentation for this class was generated from the following file:
Generated on Thu Jul 29 16:38:38 2004 for OpenSim by doxygen 1.3.6