Public Types | Public Member Functions

nstream::Folder Class Reference
[Named Stream Management]

a folder in the namespace: contains other stream::Entry objects. More...

#include <nstream.h>

Inheritance diagram for nstream::Folder:
Inheritance graph
[legend]
Collaboration diagram for nstream::Folder:
Collaboration graph
[legend]

List of all members.

Public Types

enum  eType {
  eType_Folder = 1,
  eType_File = 2,
  eType_Invalid = 0
}

Public Member Functions

virtual ~Folder (void) throw ()
virtual smart_ptr< EntrygetChildByName (IN const char *name)=0
 get a child entry directly by its name relative to the parent (returns NULL if no such child exists)
virtual void resetIteration (void)=0
 reset the Folder iteration to point to the first Entry again.
virtual smart_ptr< EntrygetNextChild (void)=0
 get the next child Entry object. Returns null when done.
virtual eType getType (void) const =0 throw ()
 what type of entry is this?
virtual const char * getName (void) const =0 throw ()
 this Entry's name in the namespace (that is, relative to the root of the namespace).
virtual smart_ptr< ManagergetManager (void)=0
 the Manager of this namespace

Detailed Description

a folder in the namespace: contains other stream::Entry objects.

The iteration model for Folders is very primitive. That is intentional. If you want multiple iterators for a given Folder at the same time, create multiple Folder objects. Remember that you may be creating expensive iterators underneath (open directory handles, database cursors, etc.) so in general keeping multiple iterators open at the same time is discouraged anyway.

Notes to users and implementers:

Definition at line 197 of file nstream.h.


Member Enumeration Documentation

enum nstream::Entry::eType [inherited]
Enumerator:
eType_Folder 

this is a Folder object

eType_File 

this is a File object

eType_Invalid 

Definition at line 132 of file nstream.h.


Constructor & Destructor Documentation

nstream::Folder::~Folder ( void   )  throw () [virtual]

Definition at line 49 of file nstream.cpp.


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