This class allows clients to specify file system entities via path names. Constructing an IPathName object, as in:
IPathName aPathName("/home/widget/work/Foo.C", IUnixPathNameParser());
allows the client to get an IFileSystemEntity representing the file Foo.C via a call such as:
IFile anEntity(aPathName);
You may provide a "parser" for the host-specific paths that you pass in, or you may use the default parser for the system on which your program is running. A parser that works for the system on which your program is running is available from IPathName::defaultParser().
Constructors & Destructor![]() |
public:
virtual ~IPathName()
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
public:
IPathName(const IPathName& copyMe)
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
public:
IPathName()
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
public:
IPathName( const IHostPathName& path, const ICompoundNameParser& aParser = defaultParser ( ) )
aParser The parser used to convert the text into path name components. If none is specified, the default filename parser is used.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
public:
IPathName( const IDirectory& startHere, const IHostPathName& partialPath, const ICompoundNameParser& aParser = defaultParser ( ) )
partialPath The text representation of the partial path that is appended to the directory's path.
aParser The parser used to convert the text into path name components. If none is specified, the default filename parser is used.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
public:
IPathName(const ICompoundName& downcast)
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
public:
IPathName( const IDirectory& startHere, const IPathName& partialPath )
partialPath The text representation of the partial path that is appended to the directory's path.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
public:
IPathName& operator =(const IPathName& copyMe)
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
Static member functions![]() |
public:
static const ICompoundNameParser& defaultParser()
If you have a user-supplied path, a command line argument, etc., this is the parser that you should use to parse it.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
Streaming![]() |
protected:
virtual void readFromStream(IDataStream& fromwhere)
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
protected:
virtual void writeToStream(IDataStream& towhere) const
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
virtual ~ICompoundName()
virtual void append(const ICompoundName& relativePath)
virtual void appendComponent(const IText& componentPath)
virtual IText componentAt(unsigned long index) const
virtual void
factorCommonRoot( const ICompoundName& anotherPath,
ICompoundName& commonRoot,
ICompoundName& rootToLeaf ) const
virtual long hash() const
ICompoundName( const IText& path, const ICompoundNameParser& parser )
ICompoundName()
ICompoundName(const ICompoundName& copyMe)
virtual bool isFullPath() const
virtual IText lastComponent() const
virtual unsigned long numberOfComponents() const
virtual bool operator !=( const ICompoundName& anotherPath ) const
ICompoundName& operator =(const ICompoundName& copyMe)
virtual bool operator ==( const ICompoundName& anotherPath ) const
virtual void setFullPath(bool isFull)
virtual void truncate(const ICompoundName& relativePath)
virtual void truncate(unsigned long segmentsToRemove)
virtual ~IMStreamable()
void externalizeToStream(IDataStream& towhere) const
void internalizeFromStream(IDataStream& fromwhere)
virtual const ITypeRepresentation& typeRepresentation() const = 0
IMStreamable()
IMStreamable(const IMStreamable& other)
virtual void readFromStream(IDataStream& fromwhere) = 0
virtual void writeToStream(IDataStream& towhere) const = 0