class Attributes2

class Attributes2:
    public Core::Portable::Attributes,
    public Core::PooledObject
{
public:
    // construction

    Attributes2(AttributeAllocator* allocator);
};

Inherited Members

public:
    // methods

    AttributeAllocator& getAllocator() const;
    void copyFrom(const Attributes& other);
    void makeReal();
    bool isEmpty() const;
    int countAttributes() const;
    AttrID getAttributeName(int index) const;
    const Attribute* getAttribute(int index) const;
    const Attribute* lookup(AttrID id) const;
    int getAttributeIndex(AttrID id) const;
    bool contains(AttrID id) const;
    bool remove(AttrID id);
    void removeAll();
    void set(AttrID id, int64 value);
    void set(AttrID id, int value);
    void set(AttrID id, double value);
    void set(AttrID id, CStringPtr value, bool shared = false);
    void set(AttrID id, const Attributes& attributes);
    AttributeQueue* makeQueue(AttrID id);
    Attributes* makeAttributes(AttrID id);
    void add(AttrID id, int64 value, int flags = 0);
    void add(AttrID id, int value, int flags = 0);
    void add(AttrID id, double value, int flags = 0);
    void add(AttrID id, CStringPtr value, int flags = 0);
    void add(AttrID id, const Attributes& attributes, int flags = 0);
    AttributeQueue* addQueue(AttrID id, int flags = 0);
    Attributes* addAttributes(AttrID id, int flags = 0);
    void addAttribute(const Attribute& a);
    int64 getInt(AttrID id) const;
    double getFloat(AttrID id) const;
    CStringPtr getString(AttrID id) const;
    const AttributeQueue* getQueue(AttrID id) const;
    Attributes* getAttributes(AttrID id) const;
    PROPERTY_POINTER(IO::Buffer, inplaceBuffer, InplaceBuffer);
    static Pool& getPool();
    static T* pool_new();

    template <class T2>
    static T* pool_new(const T2& a);

    template <class T2, class T3>
    static T* pool_new(const T2& a, const T3& b);

    void* operator new (size_t size);
    void operator delete (void* ptr);
    void* operator new (size_t size, void* block);
    void operator delete (void* ptr, void* block);