Stores information about a Regina data file, including file type and version.
More...
#include <file/fileinfo.h>
|
const std::string & | pathname () const |
| Returns the pathname of the data file being described. More...
|
|
int | type () const |
| Returns the type of data file. More...
|
|
const std::string & | typeDescription () const |
| Returns a human-readable description of the type of data file. More...
|
|
const std::string & | engine () const |
| Returns the version of the calculation engine that wrote this file. More...
|
|
bool | isCompressed () const |
| Returns whether this file is stored in compressed format. More...
|
|
bool | isInvalid () const |
| Returns whether the file metadata could not be read. More...
|
|
void | writeTextShort (std::ostream &out) const |
| Writes a short text representation of this object to the given output stream. More...
|
|
void | writeTextLong (std::ostream &out) const |
| Writes a detailed text representation of this object to the given output stream. More...
|
|
std::string | str () const |
| Returns a short text representation of this object. More...
|
|
std::string | utf8 () const |
| Returns a short text representation of this object using unicode characters. More...
|
|
std::string | detail () const |
| Returns a detailed text representation of this object. More...
|
|
|
static FileInfo * | identify (const std::string &idPathname) |
| Return information about the given Regina data file. More...
|
|
Stores information about a Regina data file, including file type and version.
Routine identify() can be used to determine this information for a given file.
As of Regina 4.94, the old-style binary files are no longer supported. These have not been in use for over a decade. The only file type that this class now recognises is TYPE_XML (compressed or uncompressed XML data files).
§ detail()
Returns a detailed text representation of this object.
This text may span many lines, and should provide the user with all the information they could want. It should be human-readable, should not contain extremely long lines (which cause problems for users reading the output in a terminal), and should end with a final newline. There are no restrictions on the underlying character set.
- Returns
- a detailed text representation of this object.
§ engine()
const std::string & regina::FileInfo::engine |
( |
| ) |
const |
|
inline |
Returns the version of the calculation engine that wrote this file.
- Returns
- the engine version for this file.
§ identify()
static FileInfo* regina::FileInfo::identify |
( |
const std::string & |
idPathname | ) |
|
|
static |
Return information about the given Regina data file.
- Internationalisation:
- This routine makes no assumptions about the character encoding used in the given path name, and simply passes it through unchanged to low-level C/C++ file I/O routines. If a FileInfo structure is returned, its pathname() routine will use the same encoding that is passed here.
- Parameters
-
idPathname | the pathname of the data file to be examined. |
- Returns
- a newly created FileInfo structure containing information about the given file, or 0 if the file type could not be identified.
§ isCompressed()
bool regina::FileInfo::isCompressed |
( |
| ) |
const |
|
inline |
Returns whether this file is stored in compressed format.
Currently this option only applies to XML data files.
- Returns
true
if this file is compressed or false
otherwise.
§ isInvalid()
bool regina::FileInfo::isInvalid |
( |
| ) |
const |
|
inline |
Returns whether the file metadata could not be read.
- Returns
true
if the metadata could not be read, false
otherwise.
§ pathname()
const std::string & regina::FileInfo::pathname |
( |
| ) |
const |
|
inline |
Returns the pathname of the data file being described.
- Internationalisation:
- The character encoding used in the pathname will be whatever was originally passed to identify(). This might or might not be UTF-8, since it needs to be understood by the low-level C/C++ file I/O routines.
- Returns
- the pathname.
§ str()
Returns a short text representation of this object.
This text should be human-readable, should fit on a single line, and should not end with a newline. Where possible, it should use plain ASCII characters.
- Python:
- In addition to str(), this is also used as the Python "stringification" function
__str__()
.
- Returns
- a short text representation of this object.
§ type()
int regina::FileInfo::type |
( |
| ) |
const |
|
inline |
Returns the type of data file.
The type will be given as one of the file type constants defined in this class.
- Returns
- the type of data file.
§ typeDescription()
const std::string & regina::FileInfo::typeDescription |
( |
| ) |
const |
|
inline |
Returns a human-readable description of the type of data file.
- Returns
- a description of the type of data file.
§ utf8()
Returns a short text representation of this object using unicode characters.
Like str(), this text should be human-readable, should fit on a single line, and should not end with a newline. In addition, it may use unicode characters to make the output more pleasant to read. This string will be encoded in UTF-8.
- Returns
- a short text representation of this object.
§ writeTextLong()
void regina::FileInfo::writeTextLong |
( |
std::ostream & |
out | ) |
const |
Writes a detailed text representation of this object to the given output stream.
- Python:
- Not present.
- Parameters
-
out | the output stream to which to write. |
§ writeTextShort()
void regina::FileInfo::writeTextShort |
( |
std::ostream & |
out | ) |
const |
Writes a short text representation of this object to the given output stream.
- Python:
- Not present.
- Parameters
-
out | the output stream to which to write. |
§ TYPE_XML
const int regina::FileInfo::TYPE_XML |
|
static |
Represents a new-style XML data file.
The documentation for this class was generated from the following file: