libmwawOLE::DirEntry Class Reference

Internal and low level: class of libmwawOLE used to store and write a directory entry. More...

## Public Types

enum | { End = 0xffffffff }

## Public Member Functions

| DirEntry ()
| constructor More...
bool | is_dir () const
| returns true for a directory More...
std::string | name () const
| returns the simplified file name More...
std::string const & | filename () const
| returns the string which was store inside the file. More...
void | setName (std::string const &nm)
| sets the file name More...
void | load (unsigned char *buffer, unsigned len)
| reads a entry content in buffer More...
void | save (unsigned char *buffer) const
| saves a entry content in buffer */ More...

## Static Public Member Functions

static unsigned | saveSize ()
| returns space required to save a dir entry More...

## Public Attributes

bool | m_valid
bool | m_macRootEntry
| false if invalid (should be skipped) More...
unsigned | m_type
| true if this is a classi mac directory entry More...
unsigned | m_colour
| the type More...
unsigned long | m_size
| the red/black color: 0 means red More...
unsigned long | m_start
| size (not valid if directory) More...
unsigned | m_right
| starting block More...
unsigned | m_left
| previous sibling More...
unsigned | m_child
| next sibling More...
DirInfo | m_info
| first child More...

## Protected Attributes

std::string | m_name
| the file information More...

## Friends

std::ostream & | operator<< (std::ostream &o, DirEntry const &e)
| operator<< More...

## Detailed Description

Internal and low level: class of libmwawOLE used to store and write a directory entry.

## Member Enumeration Documentation

anonymous enum

Enumerator
End |

## Constructor & Destructor Documentation

libmwawOLE::DirEntry::DirEntry | ( |  | ) |

inline

constructor

Referenced by load().

## Member Function Documentation

std::string const& libmwawOLE::DirEntry::filename | ( |  | ) | const

inline

returns the string which was store inside the file.

Note
  : either name() or a index (unknown) followed by name()

Referenced by libmwawOLE::DirTree::getSubStreamList(), and libmwawOLE::DirTree::print_siblings().

bool libmwawOLE::DirEntry::is_dir | ( |  | ) | const

inline

returns true for a directory

Referenced by libmwawOLE::Storage::getSubStreamForDirectory(), libmwawOLE::DirTree::getSubStreamList(), libmwawOLE::IStorage::isSubStream(), libmwawOLE::IStream::IStream(), and libmwawOLE::DirTree::print_all_siblings().

void libmwawOLE::DirEntry::load | ( | unsigned char * | buffer,
|  | unsigned | len
| ) |  |

reads a entry content in buffer

Referenced by libmwawOLE::DirTree::load().

std::string libmwawOLE::DirEntry::name | ( |  | ) | const

inline

returns the simplified file name

Referenced by libmwawOLE::DirTree::find_child(), and libmwawOLE::DirTree::CompareEntryName::operator()().

void libmwawOLE::DirEntry::save | ( | unsigned char * | buffer | ) | const

saves a entry content in buffer */

Referenced by libmwawOLE::DirTree::save().

static unsigned libmwawOLE::DirEntry::saveSize | ( |  | ) |

inline static

returns space required to save a dir entry

Referenced by libmwawOLE::DirTree::save(), and libmwawOLE::DirTree::saveSize().

void libmwawOLE::DirEntry::setName | ( | std::string const & | nm | ) |

inline

sets the file name

Referenced by libmwawOLE::DirTree::index().

## Friends And Related Function Documentation

std::ostream& operator<< | ( | std::ostream & | o,
|  | DirEntry const & | e
| ) |  |

friend

operator<<

## Member Data Documentation

unsigned libmwawOLE::DirEntry::m_child

next sibling

Referenced by libmwawOLE::DirTree::find_child(), libmwawOLE::Storage::getSubStreamForDirectory(), libmwawOLE::DirTree::getSubStreamList(), libmwawOLE::DirTree::index(), load(), libmwawOLE::operator<<(), libmwawOLE::DirTree::print_all_siblings(), save(), and libmwawOLE::DirTree::setInRedBlackTreeForm().

unsigned libmwawOLE::DirEntry::m_colour

the type

Referenced by load(), libmwawOLE::operator<<(), libmwawOLE::DirTree::print_siblings(), save(), libmwawOLE::DirTree::setInRBTForm(), and libmwawOLE::DirTree::setInRedBlackTreeForm().

DirInfo libmwawOLE::DirEntry::m_info

first child

Referenced by libmwawOLE::Storage::getSubStreamForDirectory(), load(), libmwawOLE::operator<<(), save(), and libmwawOLE::OStorage::setInformation().

unsigned libmwawOLE::DirEntry::m_left

previous sibling

Referenced by libmwawOLE::DirTree::get_siblings(), libmwawOLE::DirTree::index(), load(), libmwawOLE::operator<<(), libmwawOLE::DirTree::print_siblings(), save(), and libmwawOLE::DirTree::setInRBTForm().

bool libmwawOLE::DirEntry::m_macRootEntry

false if invalid (should be skipped)

Referenced by load(), and save().

std::string libmwawOLE::DirEntry::m_name

protected

the file information

Referenced by filename(), load(), name(), libmwawOLE::operator<<(), save(), and setName().

unsigned libmwawOLE::DirEntry::m_right

starting block

Referenced by libmwawOLE::DirTree::get_siblings(), load(), libmwawOLE::operator<<(), libmwawOLE::DirTree::print_siblings(), save(), and libmwawOLE::DirTree::setInRBTForm().

unsigned long libmwawOLE::DirEntry::m_size

the red/black color: 0 means red

Referenced by libmwawOLE::OStorage::addStream(), libmwawOLE::Storage::getSubStreamForDirectory(), libmwawOLE::IStream::IStream(), load(), libmwawOLE::operator<<(), save(), and libmwawOLE::OStorage::updateToSave().

unsigned long libmwawOLE::DirEntry::m_start

size (not valid if directory)

Referenced by libmwawOLE::OStorage::addStream(), libmwawOLE::IStream::IStream(), load(), libmwawOLE::operator<<(), save(), and libmwawOLE::OStorage::updateToSave().

unsigned libmwawOLE::DirEntry::m_type

true if this is a classi mac directory entry

Referenced by libmwawOLE::OStorage::addDirectory(), libmwawOLE::DirTree::index(), is_dir(), load(), libmwawOLE::operator<<(), and save().

bool libmwawOLE::DirEntry::m_valid

Referenced by libmwawOLE::DirTree::find_child(), libmwawOLE::Storage::getSubStreamForDirectory(), libmwawOLE::DirTree::getSubStreamList(), libmwawOLE::DirTree::index(), load(), libmwawOLE::operator<<(), libmwawOLE::DirTree::print_all_siblings(), and libmwawOLE::DirTree::setInRedBlackTreeForm().

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

- MWAWOLEStream.cxx