#ifndef DOMPluginArray_h
#define DOMPluginArray_h
#include "bindings/v8/ScriptWrappable.h"
#include "core/frame/DOMWindowProperty.h"
#include "core/plugins/DOMPlugin.h"
#include "heap/Handle.h"
#include "wtf/Forward.h"
#include "wtf/PassRefPtr.h"
#include "wtf/RefCounted.h"
#include "wtf/Vector.h"
namespace WebCore {
class LocalFrame;
class PluginData;
class DOMPluginArray FINAL : public RefCountedWillBeGarbageCollectedFinalized<DOMPluginArray>, public ScriptWrappable, public DOMWindowProperty {
public:
static PassRefPtrWillBeRawPtr<DOMPluginArray> create(LocalFrame* frame)
{
return adoptRefWillBeNoop(new DOMPluginArray(frame));
}
virtual ~DOMPluginArray();
unsigned length() const;
PassRefPtrWillBeRawPtr<DOMPlugin> item(unsigned index);
bool canGetItemsForName(const AtomicString& propertyName);
PassRefPtrWillBeRawPtr<DOMPlugin> namedItem(const AtomicString& propertyName);
void refresh(bool reload);
void trace(Visitor*) { }
private:
explicit DOMPluginArray(LocalFrame*);
PluginData* pluginData() const;
};
}
#endif