blob: d66a1d2e3f8beb9fda47458128fd33b76c991ba3 [file] [log] [blame]
/*
* Copyright (C) 2011 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef IMAGETESTHANDLER_H
#define IMAGETESTHANDLER_H
#include "vec2.h"
#include "vec3.h"
class ImageTestHandler{
public:
ImageTestHandler() {
initDebugImage();
}
ImageTestHandler(int debugHeight, int debugWidth) {
initDebugImage(debugHeight, debugWidth);
}
virtual ~ImageTestHandler() { delete[] mDebugOutput; }
virtual void processData() {}
int getDebugWidth() const { return mDebugWidth; }
int getDebugHeight() const { return mDebugHeight; }
const unsigned char* debug_output() const { return mDebugOutput; }
void copyDebugImage(int inputHeight, int inputWidth,
const unsigned char* inputImage);
void drawPoint(const Vec2i &point, const Vec3i &color);
void drawPoint(int row, int column, const Vec3i &color);
void drawLine(int angle, int radius, const Vec3i &color);
protected:
void clearDebugImage();
private:
void initDebugImage();
void initDebugImage(int debugHeight, int debugWidth);
unsigned char* mDebugOutput;
int mDebugWidth;
int mDebugHeight;
};
#endif