00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifndef HxCorbaDatabase_idl
00010 #define HxCorbaDatabase_idl
00011
00012 #include "HxCorbaVxSegmentation.idl"
00013
00014 module HxCorba
00015 {
00016
00018 exception DatabaseException
00019 {
00020 long dbCode;
00021 string dbMessage;
00022 string message;
00023 };
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046
00048 struct SegmentQueryResult
00049 {
00050 string videoName;
00051 string segmentationName;
00052 VxSegment segment;
00053 VxTimeSpan time;
00054 };
00055
00057 typedef sequence<SegmentQueryResult> SegmentQueryResultSeq;
00058
00059
00061 interface DatabaseSession
00062 {
00063 StringSeq listVideos();
00064 StringSeq listSegmentations(in string videoName);
00065 VxSegmentation getSegmentation(in string videoName, in string segName);
00066
00067
00068
00069
00070
00071
00072
00073
00074
00075
00076 VxSegmentSeq querySegments(in string sqlQuery)
00077 raises(DatabaseException);
00078
00079 StringSeq queryStrings(in string sqlQuery)
00080 raises(DatabaseException);
00081
00082 SegmentQueryResultSeq queryMultipleSegments(in string sqlQuery)
00083 raises(DatabaseException);
00084
00085 void close();
00086 };
00087
00088
00090 interface Database
00091 {
00092 DatabaseSession openSession(in string username, in string password)
00093 raises(DatabaseException);
00094 };
00095
00096 };
00097
00098 #endif // HxCorbaDatabase_idl