8 #ifndef __VRV_PLIST_INTERFACE_H__
9 #define __VRV_PLIST_INTERFACE_H__
11 #include "atts_shared.h"
12 #include "interface.h"
18 class PreparePlistFunctor;
19 class ResetDataFunctor;
39 InterfaceId
IsInterface()
const override {
return INTERFACE_PLIST; }
63 const ArrayOfConstObjects &
GetRefs()
const {
return m_references; }
102 ArrayOfConstObjects m_references;
108 std::vector<std::string> m_ids;
This is a base class for regrouping MEI att classes.
Definition: interface.h:32
This class represents a basic object.
Definition: object.h:61
This class is an interface for elements having a single time point, such as tempo,...
Definition: plistinterface.h:29
InterfaceId IsInterface() const override
Virtual method returning the InterfaceId of the interface.
Definition: plistinterface.h:39
void AddRef(const std::string &ref)
Add a reference ref to the AttPlist vector (if not already there)
void Reset() override
Virtual reset method.
FunctorCode InterfacePreparePlist(PreparePlistFunctor &functor, Object *object)
We have functor code in the interface for avoiding code duplication in each implementation class.
void AddRefAllowDuplicate(const std::string &ref)
Add a reference, not checking if it is already in the list (for expansion@plist).
ArrayOfObjects GetRefs()
Retrieve all reference objects.
virtual bool IsValidRef(const Object *ref) const
Method to be redefined in the child class if specific validation is required.
Definition: plistinterface.h:90
void SetRef(const Object *object)
Set a reference object when the id is found in the m_ids.
void SetIDStrs()
Extract the fragment of the any URIs given in @plist.
This class matches elements of @plist.
Definition: preparedatafunctor.h:321
This class resets the drawing values before calling PrepareData after changes.
Definition: resetfunctor.h:22