1 2/* 3 * Copyright 2006 The Android Open Source Project 4 * 5 * Use of this source code is governed by a BSD-style license that can be 6 * found in the LICENSE file. 7 */ 8 9 10#ifndef SkExtras_DEFINED 11#define SkExtras_DEFINED 12 13#include "SkScript.h" 14 15class SkExtras { 16public: 17 SkExtras(); 18 virtual ~SkExtras() {} 19 20 virtual SkDisplayable* createInstance(SkDisplayTypes type) = 0; 21 virtual bool definesType(SkDisplayTypes type) = 0; 22#if SK_USE_CONDENSED_INFO == 0 23 virtual const SkMemberInfo* getMembers(SkDisplayTypes type, int* infoCountPtr) = 0; 24#endif 25#ifdef SK_DEBUG 26 virtual const char* getName(SkDisplayTypes type) = 0; 27#endif 28 virtual SkDisplayTypes getType(const char match[], size_t len ) = 0; 29 30 SkScriptEngine::_propertyCallBack fExtraCallBack; 31 void* fExtraStorage; 32}; 33 34#endif // SkExtras_DEFINED 35