#include <DistShare.h>


Classes | |
| struct | NNInitWorkPackage |
Public Member Functions | |
| DistShare (xercesc::DOMElement *data) | |
| DistShare (int argc, char **argv) | |
| DistShare (const DistShare &orig) | |
| virtual | ~DistShare () |
| virtual std::list< Disk * > * | placeExtent (int64_t virtualVolumeId, int64_t position) |
| virtual void | setConfiguration (std::list< Disk * > *disks, int64_t extentsize, int32_t copies) |
| virtual void | setDisks (std::list< Disk * > *disks) |
| virtual xercesc::DOMElement * | toXML (xercesc::DOMDocument *doc) const |
| virtual std::list< Disk * > * | getDisks () const |
| virtual int64_t | getExtentsize () const |
| virtual void | setBaseMessage (uint8_t *baseMessage) |
| virtual int32_t | getCopies () const |
| void | __runInitThread (uint32_t threadID) |
Static Public Member Functions | |
| static std::string | getXMLRootType () |
DistShare implemts the Share-Stragegy. This strategy is able to distribute non redundant Extents over heterogeneous disks.
| DistShare::DistShare | ( | xercesc::DOMElement * | data ) |
Create a new instance from the data in the given XML Element.
| data | An XML-Element containing the description of a DistNearestNeighbour. |
| DistShare::DistShare | ( | int | argc, |
| char ** | argv | ||
| ) |
generate a new, uninitialized Nearest Neighbor Implementation.
| DistShare::DistShare | ( | const DistShare & | orig ) |
copy constructor
| orig | original DistNearestNeighbour |
| DistShare::~DistShare | ( | ) | [virtual] |
Destructor
| void DistShare::__runInitThread | ( | uint32_t | threadID ) |
only used internelly, but has to be public to be used by pThreads.
This Method can be called in an own thread to initialize the Nearest Neighbour Implementations multi threaded.
| virtual int32_t VDRIVE::DistShare::getCopies | ( | ) | const [inline, virtual] |
Share does not support copies, so this is always 1.
Implements VDRIVE::Distributor.
| std::list< Disk * > * DistShare::getDisks | ( | ) | const [virtual] |
Implements VDRIVE::Distributor.
| virtual int64_t VDRIVE::DistShare::getExtentsize | ( | ) | const [inline, virtual] |
Implements VDRIVE::Distributor.
| static std::string VDRIVE::DistShare::getXMLRootType | ( | ) | [inline, static] |
Get the Root-Type of XML-Elements representing this class.
| std::list< Disk * > * DistShare::placeExtent | ( | int64_t | virtualVolumeId, |
| int64_t | position | ||
| ) | [virtual] |
Implements VDRIVE::Distributor.
| void DistShare::setBaseMessage | ( | uint8_t * | baseMessage ) | [virtual] |
Overridden, so changing the baseMessage in DistShare also changes the baseMessage in the underlying NearestNeighbour implementations.
Reimplemented from VDRIVE::Distributor.
| void DistShare::setConfiguration | ( | std::list< Disk * > * | disks, |
| int64_t | extentsize, | ||
| int32_t | copies | ||
| ) | [virtual] |
Share does not support copies, so copies is ignored and automatically set to 1.
Implements VDRIVE::Distributor.
| void DistShare::setDisks | ( | std::list< Disk * > * | disks ) | [virtual] |
Implements VDRIVE::Distributor.
| xercesc::DOMElement * DistShare::toXML | ( | xercesc::DOMDocument * | doc ) | const [virtual] |
Implements VDRIVE::Distributor.
1.7.2