Open CASCADE Technology
7.3.0
|
#include <OSD_Path.hxx>
Public Member Functions | |
OSD_Path () | |
Creates a Path object initialized to an empty string. i.e. current directory. More... | |
OSD_Path (const TCollection_AsciiString &aDependentName, const OSD_SysType aSysType=OSD_Default) | |
Creates a Path object initialized by dependant path. ex: OSD_Path me ("/usr/bin/myprog.sh",OSD_UnixBSD);. More... | |
OSD_Path (const TCollection_AsciiString &aNode, const TCollection_AsciiString &aUsername, const TCollection_AsciiString &aPassword, const TCollection_AsciiString &aDisk, const TCollection_AsciiString &aTrek, const TCollection_AsciiString &aName, const TCollection_AsciiString &anExtension) | |
Initializes a system independent path. By default , the Path conversion will be assumed using currently used system. A special syntax is used to specify a "aTrek" in an independent manner : a "|" represents directory separator a "^" means directory above (father) examples: "|usr|bin" - On UNIX -> "/usr/bin". More... | |
void | Values (TCollection_AsciiString &aNode, TCollection_AsciiString &aUsername, TCollection_AsciiString &aPassword, TCollection_AsciiString &aDisk, TCollection_AsciiString &aTrek, TCollection_AsciiString &aName, TCollection_AsciiString &anExtension) const |
Gets each component of a path. More... | |
void | SetValues (const TCollection_AsciiString &aNode, const TCollection_AsciiString &aUsername, const TCollection_AsciiString &aPassword, const TCollection_AsciiString &aDisk, const TCollection_AsciiString &aTrek, const TCollection_AsciiString &aName, const TCollection_AsciiString &anExtension) |
Sets each component of a path. More... | |
void | SystemName (TCollection_AsciiString &FullName, const OSD_SysType aType=OSD_Default) const |
Returns system dependent path <aType> is one among Unix,VMS ... This function is not private because you may need to display system dependent path on a front-end. It can be useful when communicating with another system. For instance when you want to communicate between VMS and Unix to transfer files, or to do a remote procedure call using files. example : OSD_Path myPath ("sparc4", "sga", "secret_passwd", "$5$dkb100","|users|examples"); Internal ( Dependent_name ); On UNIX sga"secret_passwd":/users/examples On VMS sparc4"sga secret_passwd"::$5$dkb100:[users.examples] Sets each component of a Path giving its system dependent name. More... | |
void | ExpandedName (TCollection_AsciiString &aName) |
Returns system dependent path resolving logical symbols. More... | |
void | UpTrek () |
This removes the last directory name in <aTrek> and returns result. ex: me = "|usr|bin|todo.sh" me.UpTrek() gives me = "|usr|todo.sh" if <me> contains "|", me.UpTrek() will give again "|" without any error. More... | |
void | DownTrek (const TCollection_AsciiString &aName) |
This appends a directory name into the Trek. ex: me = "|usr|todo.sh" me.DownTrek("bin") gives me = "|usr|bin|todo.sh". More... | |
Standard_Integer | TrekLength () const |
Returns number of components in Trek of <me>. ex: me = "|usr|sys|etc|bin" me.TrekLength() returns 4. More... | |
void | RemoveATrek (const Standard_Integer where) |
This removes a component of Trek in <me> at position <where>. The first component of Trek is numbered 1. ex: me = "|usr|bin|" me.RemoveATrek(1) gives me = "|bin|" To avoid a 'NumericError' because of a bad <where>, use TrekLength() to know number of components of Trek in <me>. More... | |
void | RemoveATrek (const TCollection_AsciiString &aName) |
This removes <aName> from <me> in Trek. No error is raised if <aName> is not in <me>. ex: me = "|usr|sys|etc|doc" me.RemoveATrek("sys") gives me = "|usr|etc|doc". More... | |
TCollection_AsciiString | TrekValue (const Standard_Integer where) const |
Returns component of Trek in <me> at position <where>. ex: me = "|usr|bin|sys|" me.TrekValue(2) returns "bin". More... | |
void | InsertATrek (const TCollection_AsciiString &aName, const Standard_Integer where) |
This inserts <aName> at position <where> into Trek of <me>. ex: me = "|usr|etc|" me.InsertATrek("sys",2) gives me = "|usr|sys|etc". More... | |
TCollection_AsciiString | Node () const |
Returns Node of <me>. More... | |
TCollection_AsciiString | UserName () const |
Returns UserName of <me>. More... | |
TCollection_AsciiString | Password () const |
Returns Password of <me>. More... | |
TCollection_AsciiString | Disk () const |
Returns Disk of <me>. More... | |
TCollection_AsciiString | Trek () const |
Returns Trek of <me>. More... | |
TCollection_AsciiString | Name () const |
Returns file name of <me>. If <me> hasn't been initialized, it returns an empty AsciiString. More... | |
TCollection_AsciiString | Extension () const |
Returns my extension name. This returns an empty string if path contains no file name. More... | |
void | SetNode (const TCollection_AsciiString &aName) |
Sets Node of <me>. More... | |
void | SetUserName (const TCollection_AsciiString &aName) |
Sets UserName of <me>. More... | |
void | SetPassword (const TCollection_AsciiString &aName) |
Sets Password of <me>. More... | |
void | SetDisk (const TCollection_AsciiString &aName) |
Sets Disk of <me>. More... | |
void | SetTrek (const TCollection_AsciiString &aName) |
Sets Trek of <me>. More... | |
void | SetName (const TCollection_AsciiString &aName) |
Sets file name of <me>. If <me> hasn't been initialized, it returns an empty AsciiString. More... | |
void | SetExtension (const TCollection_AsciiString &aName) |
Sets my extension name. More... | |
Standard_Boolean | LocateExecFile (OSD_Path &aPath) |
Finds the full path of an executable file, like the "which" Unix utility. Uses the path environment variable. Returns False if executable file not found. More... | |
Static Public Member Functions | |
static Standard_Boolean | IsValid (const TCollection_AsciiString &theDependentName, const OSD_SysType theSysType=OSD_Default) |
Returns TRUE if <theDependentName> is valid for this SysType. More... | |
static TCollection_AsciiString | RelativePath (const TCollection_AsciiString &DirPath, const TCollection_AsciiString &AbsFilePath) |
Returns the relative file path between the absolute directory path <DirPath> and the absolute file path <AbsFilePath>. If <DirPath> starts with "/", pathes are handled as on Unix, if it starts with a letter followed by ":", as on WNT. In particular on WNT directory names are not key sensitive. If handling fails, an empty string is returned. More... | |
static TCollection_AsciiString | AbsolutePath (const TCollection_AsciiString &DirPath, const TCollection_AsciiString &RelFilePath) |
Returns the absolute file path from the absolute directory path <DirPath> and the relative file path returned by RelativePath(). If the RelFilePath is an absolute path, it is returned and the directory path is ignored. If handling fails, an empty string is returned. More... | |
OSD_Path::OSD_Path | ( | ) |
Creates a Path object initialized to an empty string. i.e. current directory.
OSD_Path::OSD_Path | ( | const TCollection_AsciiString & | aDependentName, |
const OSD_SysType | aSysType = OSD_Default |
||
) |
Creates a Path object initialized by dependant path. ex: OSD_Path me ("/usr/bin/myprog.sh",OSD_UnixBSD);.
OSD_Path me ("sys$common:[syslib]cc.exe",OSD_OSF) will raise a ProgramError due to invalid name for this type of system. In order to avoid a 'ProgramError' , use IsValid(...) to ensure you the validity of <aDependentName>. Raises ConstructionError when the path is either null or contains characters not in range of ' '...'~'.
OSD_Path::OSD_Path | ( | const TCollection_AsciiString & | aNode, |
const TCollection_AsciiString & | aUsername, | ||
const TCollection_AsciiString & | aPassword, | ||
const TCollection_AsciiString & | aDisk, | ||
const TCollection_AsciiString & | aTrek, | ||
const TCollection_AsciiString & | aName, | ||
const TCollection_AsciiString & | anExtension | ||
) |
Initializes a system independent path. By default , the Path conversion will be assumed using currently used system. A special syntax is used to specify a "aTrek" in an independent manner : a "|" represents directory separator a "^" means directory above (father) examples: "|usr|bin" - On UNIX -> "/usr/bin".
"^|rep" - On UNIX -> "../rep"
"subdir|" - On UNIX -> "subdir/"
|
static |
Returns the absolute file path from the absolute directory path <DirPath> and the relative file path returned by RelativePath(). If the RelFilePath is an absolute path, it is returned and the directory path is ignored. If handling fails, an empty string is returned.
TCollection_AsciiString OSD_Path::Disk | ( | ) | const |
Returns Disk of <me>.
void OSD_Path::DownTrek | ( | const TCollection_AsciiString & | aName | ) |
This appends a directory name into the Trek. ex: me = "|usr|todo.sh" me.DownTrek("bin") gives me = "|usr|bin|todo.sh".
void OSD_Path::ExpandedName | ( | TCollection_AsciiString & | aName | ) |
Returns system dependent path resolving logical symbols.
TCollection_AsciiString OSD_Path::Extension | ( | ) | const |
Returns my extension name. This returns an empty string if path contains no file name.
void OSD_Path::InsertATrek | ( | const TCollection_AsciiString & | aName, |
const Standard_Integer | where | ||
) |
This inserts <aName> at position <where> into Trek of <me>. ex: me = "|usr|etc|" me.InsertATrek("sys",2) gives me = "|usr|sys|etc".
|
static |
Returns TRUE if <theDependentName> is valid for this SysType.
Standard_Boolean OSD_Path::LocateExecFile | ( | OSD_Path & | aPath | ) |
Finds the full path of an executable file, like the "which" Unix utility. Uses the path environment variable. Returns False if executable file not found.
TCollection_AsciiString OSD_Path::Name | ( | ) | const |
Returns file name of <me>. If <me> hasn't been initialized, it returns an empty AsciiString.
TCollection_AsciiString OSD_Path::Node | ( | ) | const |
Returns Node of <me>.
TCollection_AsciiString OSD_Path::Password | ( | ) | const |
Returns Password of <me>.
|
static |
Returns the relative file path between the absolute directory path <DirPath> and the absolute file path <AbsFilePath>. If <DirPath> starts with "/", pathes are handled as on Unix, if it starts with a letter followed by ":", as on WNT. In particular on WNT directory names are not key sensitive. If handling fails, an empty string is returned.
void OSD_Path::RemoveATrek | ( | const Standard_Integer | where | ) |
This removes a component of Trek in <me> at position <where>. The first component of Trek is numbered 1. ex: me = "|usr|bin|" me.RemoveATrek(1) gives me = "|bin|" To avoid a 'NumericError' because of a bad <where>, use TrekLength() to know number of components of Trek in <me>.
void OSD_Path::RemoveATrek | ( | const TCollection_AsciiString & | aName | ) |
This removes <aName> from <me> in Trek. No error is raised if <aName> is not in <me>. ex: me = "|usr|sys|etc|doc" me.RemoveATrek("sys") gives me = "|usr|etc|doc".
void OSD_Path::SetDisk | ( | const TCollection_AsciiString & | aName | ) |
Sets Disk of <me>.
void OSD_Path::SetExtension | ( | const TCollection_AsciiString & | aName | ) |
Sets my extension name.
void OSD_Path::SetName | ( | const TCollection_AsciiString & | aName | ) |
Sets file name of <me>. If <me> hasn't been initialized, it returns an empty AsciiString.
void OSD_Path::SetNode | ( | const TCollection_AsciiString & | aName | ) |
Sets Node of <me>.
void OSD_Path::SetPassword | ( | const TCollection_AsciiString & | aName | ) |
Sets Password of <me>.
void OSD_Path::SetTrek | ( | const TCollection_AsciiString & | aName | ) |
Sets Trek of <me>.
void OSD_Path::SetUserName | ( | const TCollection_AsciiString & | aName | ) |
Sets UserName of <me>.
void OSD_Path::SetValues | ( | const TCollection_AsciiString & | aNode, |
const TCollection_AsciiString & | aUsername, | ||
const TCollection_AsciiString & | aPassword, | ||
const TCollection_AsciiString & | aDisk, | ||
const TCollection_AsciiString & | aTrek, | ||
const TCollection_AsciiString & | aName, | ||
const TCollection_AsciiString & | anExtension | ||
) |
Sets each component of a path.
void OSD_Path::SystemName | ( | TCollection_AsciiString & | FullName, |
const OSD_SysType | aType = OSD_Default |
||
) | const |
Returns system dependent path <aType> is one among Unix,VMS ... This function is not private because you may need to display system dependent path on a front-end. It can be useful when communicating with another system. For instance when you want to communicate between VMS and Unix to transfer files, or to do a remote procedure call using files. example : OSD_Path myPath ("sparc4", "sga", "secret_passwd", "$5$dkb100","|users|examples"); Internal ( Dependent_name ); On UNIX sga"secret_passwd":/users/examples On VMS sparc4"sga secret_passwd"::$5$dkb100:[users.examples] Sets each component of a Path giving its system dependent name.
TCollection_AsciiString OSD_Path::Trek | ( | ) | const |
Returns Trek of <me>.
Standard_Integer OSD_Path::TrekLength | ( | ) | const |
Returns number of components in Trek of <me>. ex: me = "|usr|sys|etc|bin" me.TrekLength() returns 4.
TCollection_AsciiString OSD_Path::TrekValue | ( | const Standard_Integer | where | ) | const |
Returns component of Trek in <me> at position <where>. ex: me = "|usr|bin|sys|" me.TrekValue(2) returns "bin".
void OSD_Path::UpTrek | ( | ) |
This removes the last directory name in <aTrek> and returns result. ex: me = "|usr|bin|todo.sh" me.UpTrek() gives me = "|usr|todo.sh" if <me> contains "|", me.UpTrek() will give again "|" without any error.
TCollection_AsciiString OSD_Path::UserName | ( | ) | const |
Returns UserName of <me>.
void OSD_Path::Values | ( | TCollection_AsciiString & | aNode, |
TCollection_AsciiString & | aUsername, | ||
TCollection_AsciiString & | aPassword, | ||
TCollection_AsciiString & | aDisk, | ||
TCollection_AsciiString & | aTrek, | ||
TCollection_AsciiString & | aName, | ||
TCollection_AsciiString & | anExtension | ||
) | const |
Gets each component of a path.