17f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk/* 27f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk * Copyright (C) 2011 The Android Open Source Project 37f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk * 47f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk * Licensed under the Apache License, Version 2.0 (the "License"); 57f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk * you may not use this file except in compliance with the License. 67f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk * You may obtain a copy of the License at 77f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk * 87f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk * http://www.apache.org/licenses/LICENSE-2.0 97f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk * 107f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk * Unless required by applicable law or agreed to in writing, software 117f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk * distributed under the License is distributed on an "AS IS" BASIS, 127f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 137f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk * See the License for the specific language governing permissions and 147f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk * limitations under the License. 157f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk */ 167f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk 177f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk#ifndef ANDROID_RS_PROGRAM_BASE_H 187f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk#define ANDROID_RS_PROGRAM_BASE_H 197f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk 207f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk#include "rsObjectBase.h" 217f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk#include "rsElement.h" 227f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk 237f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk// --------------------------------------------------------------------------- 247f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouknamespace android { 257f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouknamespace renderscript { 267f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk 277f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchoukclass ProgramBase : public ObjectBase { 287f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchoukpublic: 297f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk ProgramBase(Context *rsc) : ObjectBase(rsc) { 307f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk mDirty = true; 317f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk } 327f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk 337f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk void forceDirty() const {mDirty = true;} 347f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk 357f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchoukprotected: 367f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk mutable bool mDirty; 377f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk}; 387f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk 397f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk} 407f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk} 417f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk#endif // ANDROID_RS_PROGRAM_BASE_H 427f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk 437f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk 447f126c78a107257090c6675ea40ffac41516a9dcAlex Sakhartchouk 45