00001 #ifndef __ImageSample__
00002 #define __ImageSample__
00003
00004
00023 #include <stdio.h>
00024
00025 #include "RectObjectArea.hpp"
00026
00027
00028 class ImageSample
00029 {
00030 private:
00031
00032 char* filename;
00033
00034 int width, height;
00035
00036 int n, nmax;
00037 RectObjectArea** oArea;
00038
00039
00040 public:
00041
00042 ImageSample(char* name, int w, int h, int aNmax=64);
00043 ImageSample(FILE* file);
00044 virtual ~ImageSample();
00045
00046 int getWidth(){ return width; }
00047 int getHeight(){ return height; }
00048
00049
00050 void setFilename(char* name);
00051 char* getFilename(){ return filename; }
00052
00053 int numberOfAreas(){ return n; }
00054 int maxAreas(){ return nmax; }
00055 void extendSet(int nitems);
00056
00057 RectObjectArea* get(int i){ return oArea[i]; }
00058 void set(int i, RectObjectArea* region ){ oArea[i]= region; }
00059
00060 void add(RectObjectArea* region);
00061 void addAt(int index, RectObjectArea* region);
00062 void remove(int i);
00063
00064
00065 RectObjectArea* dequeue(){RectObjectArea* first=get(0); remove(0); return first;}
00066 void enqueue(RectObjectArea* region){ add(region); }
00067
00068 int numberOfPixels(int iObject);
00069
00070
00071 void write(FILE* file);
00072
00073 void output();
00074 };
00075
00076
00077 #endif