The Vish Visualization Shell 0.3
Vish
MemCore::LoaderBase Class Referenceabstract

Base class for Loaders. More...

#include <elementary/memcore/Loader.hpp>

Inheritance diagram for MemCore::LoaderBase:
MemCore::ReferenceBase< LoaderBase > MemCore::Attributes MemCore::Loader< X >

Classes

struct  ldrpar
 Abstract internal helper class. More...

Public Member Functions

virtual bool loadable (const RefPtr< LoaderParameters > &) const =0
 Check wether this specific URL might be handled by this loader.
Public Member Functions inherited from MemCore::ReferenceBase< LoaderBase >
auto getObjectCountID () const noexcept
 Get a unique ID for this object in the given domain.
bool isIdentical (const WeakPtr< LoaderBase, LoaderBase > &PossibleSelf) const noexcept
 Check if this object is identical to the one used by the given pointer.
void mkAutoDestructive ()
 Marks this object as being automatically destructed, e.g.
refcount_t refcount () const noexcept
 The strong reference count.
 ReferenceBase (LoaderBase *that) noexcept
 Constructor, initializes reference counter to zero.
const auto & self () const
 Return weak pointer to the object self.
refcount_t wrefcount () const noexcept
 The weak reference count.
Public Member Functions inherited from MemCore::Attributes
 Attributes ()
 Default constructor.
MemCore::RefPtr< MemCore::ChunkBase > getAttribute (const std::string &name) const
 get an attribute by name
const Ageable & getAttributeAge () const
 Get the age of these attributes.
template<class T>
std::pair< bool, T > getAttributeValue (const string &AttributeName, size_t ElementNumber=0) const
 Get a single value from an attribute, use structured binding for most compact syntax such as:
attributes_t & getAttributeValues ()
 allow direct access to internal map
const attributes_t & getAttributeValues () const
 allow direct access to internal map
size_t getNumberOfAttributes () const
 Retrieve the number of attributes.
bool hasAttribute (const std::string &name) const
 Check if an attribute exists.
template<class Functor>
int Iterate (const Functor &L) const
int iterate (Iterator &it) const
 Iterate over attributes and apply iterator's apply function for each attribute, i.e.
template<class Functor>
int iterate_attributes (const Functor &L) const
size_t NumberOfAttributes () const
 Retrieve the number of attributes.
void setAttribute (const std::string &name, const MemCore::RefPtr< MemCore::ChunkBase > &AttribData)
 set an attribute
template<class T>
ResizableChunk< T > & setAttributeValue (const std::string &name, const T &AttribData)
 set a single attribute
template<class T>
ResizableChunk< T > & setAttributeValues (const std::string &name, const std::initializer_list< T > &AttribData)
 set an attribute
template<class T>
const T & setValue (const T &AttribData, const std::string &name)
 Convenience function: set an single attribute, return the value itself.
template<class T>
const T & setValue (const T &AttribData, const std::string &name, const std::string &Comment, const std::string &CommentPrefix="Comment")
 Convenience function: set an single attribute with a comment, return the value itself.
string toString () const
 Convert attributes to string.
const Ageable & touchAttributes () const
 Touch the attribute age to indicate some values in the attributes have been changed.
const Ageable & updateAttributeAge (const Ageable &A) const
 Update the attribute age to another age to indicate some values in the attributes have been changed.
 ~Attributes ()
 Destructor.

Protected Member Functions

 LoaderBase ()
 Constructor.
virtual ~LoaderBase ()=0
 Destructor.
Protected Member Functions inherited from MemCore::ReferenceBase< LoaderBase >
virtual void extremeUnction ()
 A virtual function that will be called just before the object is destroyed.
ReferenceBase & operator= (const ReferenceBase &R)
 Protected assignment operator (should not be called).
void suicide ()
 Delete this.
virtual ~ReferenceBase ()
 Virtual destructor.

Additional Inherited Members

Public Types inherited from MemCore::ReferenceBase< LoaderBase >
using reference_domain_t
 The type of the base class.
using SelfPtr_t
 Type for a pointer to this object itself.

Detailed Description

Base class for Loaders.

,LoaderRegistry