casacore
Loading...
Searching...
No Matches
casacore::DOos Class Reference

More...

#include <DOos.h>

Static Public Member Functions

static Vector< BoolisValidPathName (const Vector< String > &pathName)
 Are the given path names valid?
static Vector< BoolfileExists (const Vector< String > &fileName, Bool follow=True)
 Do the given files exist?
static Vector< StringfileType (const Vector< String > &fileName, Bool follow=True)
 Give the type of the given files.
static Vector< StringfileNames (const String &directoryName, const String &fileNamePattern, const String &fileTypes, Bool all=False, Bool follow=True)
 Give all file names in the directory matching the given pattern and file types.
static void makeDirectory (const Vector< String > &directoryNames, Bool makeParent=False)
 Make directories.
static Vector< StringfullName (const Vector< String > &fileName)
 Return the full absolute names for the given names.
static Vector< StringdirName (const Vector< String > &fileName)
 Return the full directory names of the given files.
static Vector< StringbaseName (const Vector< String > &fileName)
 Return the base names of the given files.
static Vector< DoublefileTime (const Vector< String > &fileName, Int whichTime=1, Bool follow=True)
 Get the time of the given files.
static Vector< DoubletotalSize (const Vector< String > &fileName, Bool follow=True)
 Return the total size (in bytes) for each file or directory given.
static Double totalSize (const String &fileName, Bool follow=True)
static Vector< DoublefreeSpace (const Vector< String > &fileName, Bool follow=True)
 Return the total size on the devices the given directories are on.
static void copy (const String &to, const String &from, Bool overwrite=True, Bool follow=True)
 Copy the file (or directory recursively).
static void move (const String &to, const String &from, Bool overwrite=True, Bool follow=True)
 Move the file or directory.
static void remove (const String &fileName, Bool recursive, Bool mustExist=True, Bool follow=True)
 Remove the files (or directories recursively).
static void remove (const Vector< String > &fileNames, Bool recursive, Bool mustExist=True, Bool follow=True)
static Vector< IntlockInfo (const String &tableName)
 Tell if a table is used or locked by another process.

Detailed Description

DO for accessing os-specific functions

Intended use:

Public interface

Review Status

Reviewed By:
UNKNOWN
Date Reviewed:
before2004/08/25

Prerequisite

Etymology

Synopsis

This class serves as the connection between the OS module and a tasking interface in Glish or Python. It is meant for access to OS-specific functions, in particular file handling.

Example

Motivation

Thrown Exceptions

  • AipsError if AIPSPATH or HOME is not defined

To Do

  • Check for feasable extensions

Definition at line 78 of file DOos.h.

Member Function Documentation

◆ baseName()

Vector< String > casacore::DOos::baseName ( const Vector< String > & fileName)
static

Return the base names of the given files.

◆ copy()

void casacore::DOos::copy ( const String & to,
const String & from,
Bool overwrite = True,
Bool follow = True )
static

Copy the file (or directory recursively).

If from is a symbolic link and follow is False, only the symbolic link is copied.

References casacore::True.

◆ dirName()

Vector< String > casacore::DOos::dirName ( const Vector< String > & fileName)
static

Return the full directory names of the given files.

◆ fileExists()

Vector< Bool > casacore::DOos::fileExists ( const Vector< String > & fileName,
Bool follow = True )
static

Do the given files exist?

If follow is False, symbolic links are not followed.

References casacore::True.

◆ fileNames()

Vector< String > casacore::DOos::fileNames ( const String & directoryName,
const String & fileNamePattern,
const String & fileTypes,
Bool all = False,
Bool follow = True )
static

Give all file names in the directory matching the given pattern and file types.


The pattern can be a string like the filename pattern given in a shell (e.g. '*.cc'). If the string is empty, all files are taken into account.
Filetypes is a string determining which file types will be selected. Each character in the string determines a file type. They are:

r
regular file
d
directory
s
symbolic link
R
readable file
W
writable file
X
executable file

The all flag determines if file names starting with a. will also be selected.

References casacore::all(), casacore::False, and casacore::True.

Referenced by remove().

◆ fileTime()

Vector< Double > casacore::DOos::fileTime ( const Vector< String > & fileName,
Int whichTime = 1,
Bool follow = True )
static

Get the time of the given files.

whichTime determines which time to return:
1 = time of last access
2 = time of last modification
3 = time of last status change

References casacore::True.

◆ fileType()

Vector< String > casacore::DOos::fileType ( const Vector< String > & fileName,
Bool follow = True )
static

Give the type of the given files.

References casacore::True.

◆ freeSpace()

Vector< Double > casacore::DOos::freeSpace ( const Vector< String > & fileName,
Bool follow = True )
static

Return the total size on the devices the given directories are on.

If follow is False, symbolic links are not followed.

References casacore::True.

◆ fullName()

Vector< String > casacore::DOos::fullName ( const Vector< String > & fileName)
static

Return the full absolute names for the given names.

◆ isValidPathName()

Vector< Bool > casacore::DOos::isValidPathName ( const Vector< String > & pathName)
static

Are the given path names valid?

I.e. does a file with the given name exist or can it be created?

◆ lockInfo()

Vector< Int > casacore::DOos::lockInfo ( const String & tableName)
static

Tell if a table is used or locked by another process.

It returns a vector containing 3 integers. The first one tells if the table is in use or locked. See LockFile ::showLock for details. The second one gives the pid of the process using/locking the table. The third one tells if the table is permanently locked (0 = not).

◆ makeDirectory()

void casacore::DOos::makeDirectory ( const Vector< String > & directoryNames,
Bool makeParent = False )
static

Make directories.

It throws an exception if a file with that name already exists.

References casacore::False.

◆ move()

void casacore::DOos::move ( const String & to,
const String & from,
Bool overwrite = True,
Bool follow = True )
static

Move the file or directory.

If from is a symbolic link and follow is False, only the symbolic link is moved.

References casacore::True.

◆ remove() [1/2]

void casacore::DOos::remove ( const String & fileName,
Bool recursive,
Bool mustExist = True,
Bool follow = True )
static

Remove the files (or directories recursively).

If fileName is a symbolic link and follow is False, only the symbolic link is removed.

References casacore::True.

◆ remove() [2/2]

void casacore::DOos::remove ( const Vector< String > & fileNames,
Bool recursive,
Bool mustExist = True,
Bool follow = True )
static

References fileNames(), and casacore::True.

◆ totalSize() [1/2]

Double casacore::DOos::totalSize ( const String & fileName,
Bool follow = True )
static

References casacore::True.

◆ totalSize() [2/2]

Vector< Double > casacore::DOos::totalSize ( const Vector< String > & fileName,
Bool follow = True )
static

Return the total size (in bytes) for each file or directory given.

For a directory the size of all files (recursively) in it is given. If follow is False, symbolic links are not followed.

References casacore::True.


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