Home || Architecture || Video Search || Visual Search || Scripts || Applications || Important Messages || OGL || Src

TableVxs.h

Go to the documentation of this file.
00001 #ifndef Impala_Core_Table_TableVxs_h
00002 #define Impala_Core_Table_TableVxs_h
00003 
00004 #include "Basis/NativeTypes.h"
00005 #include "Core/Table/TableTem.h"
00006 #include "Core/Geometry/FileReadVxRectangle.h"
00007 #include "Core/Geometry/FileWriteVxRectangle.h"
00008 
00009 namespace Impala
00010 {
00011 namespace Core
00012 {
00013 namespace Table
00014 {
00015 
00016 
00017 typedef TableTem<Column::ColumnTem<Int32>,
00018                  Column::ColumnTem<Int32>,
00019                  Column::ColumnTem<String>,
00020                  Column::ColumnTem<Geometry::Rectangle>,
00021                  Column::ColumnTem<String>,
00022                  Column::ColumnTem<String>,
00023                  Column::ColumnTem<String>,
00024                  Column::ColumnTem<String>,
00025                  Column::ColumnTem<Int32> > TableVxsBaseType;
00026 
00029 class TableVxs : public TableVxsBaseType
00030 {
00031 public:
00032 
00033     TableVxs() : TableVxsBaseType(0)
00034     {
00035         SetColName(1, "start");
00036         SetColName(2, "end");
00037         SetColName(3, "anno");
00038         SetColName(4, "rect");
00039         SetColName(5, "video");
00040         SetColName(6, "section");
00041         SetColName(7, "dir");
00042         SetColName(8, "extra");
00043         SetColName(9, "fileId");
00044     }
00045 
00046     void
00047     ReadVxsFile(String fileName)
00048     {
00049         std::vector<Geometry::VxRectangle> vrList;
00050         Geometry::FileReadVxRectangle(std::back_inserter(vrList), fileName);
00051         for (int i=0 ; i<vrList.size() ; i++)
00052         {
00053             Geometry::VxRectangle vr = vrList[i];
00054             Add(vr.mStartFrame, vr.mEndFrame, vr.mAnno, vr.mRect, vr.mVideoName,
00055                 vr.mSection, vr.mDir, vr.mExtra, -1);
00056         }
00057     }
00058 
00059     void
00060     WriteVxsFile(String fileName)
00061     {
00062         std::vector<Geometry::VxRectangle> vrList;
00063         for (int i=0 ; i<Size() ; i++)
00064         {
00065             Geometry::VxRectangle vr;
00066             vr.mStartFrame = Get1(i);
00067             vr.mEndFrame = Get2(i);
00068             vr.mAnno = Get3(i);
00069             vr.mRect = Get4(i);
00070             vr.mVideoName = Get5(i);
00071             vr.mSection = Get6(i);
00072             vr.mDir = Get7(i);
00073             vr.mExtra = Get8(i);
00074             vrList.push_back(vr);
00075         }
00076         Geometry::FileWriteVxRectangle(fileName, vrList.begin(), vrList.end());
00077     }
00078 
00079 };
00080 
00081 } // namespace Table
00082 } // namespace Core
00083 } // namespace Impala
00084 
00085 #endif

Generated on Fri Mar 19 09:31:21 2010 for ImpalaSrc by  doxygen 1.5.1