00001 #ifndef Impala_Persistency_AnnotationTableLocator_h
00002 #define Impala_Persistency_AnnotationTableLocator_h
00003
00004 #include "Basis/Quids.h"
00005 #include "Persistency/Locator.h"
00006
00007 namespace Impala
00008 {
00009 namespace Persistency
00010 {
00011
00012
00013 class AnnotationTableLocator : public Locator
00014 {
00015 public:
00016
00017 AnnotationTableLocator()
00018 {
00019 }
00020
00021 AnnotationTableLocator(CString protocolAndHost, CString dataSet,
00022 int quidClass, String conceptSet, String keyword)
00023 : Locator(protocolAndHost, dataSet)
00024 {
00025 mQuidClass = quidClass;
00026 mConceptSet = conceptSet;
00027 mKeyword = keyword;
00028 }
00029
00030 AnnotationTableLocator(CString dataSet, int quidClass, CString conceptSet,
00031 CString keyword, CmdOptions& options)
00032 : Locator(dataSet, options)
00033 {
00034 mQuidClass = quidClass;
00035 mConceptSet = conceptSet;
00036 mKeyword = keyword;
00037 }
00038
00039 AnnotationTableLocator(const Locator& base, int quidClass,
00040 CString conceptSet, CString keyword)
00041 : Locator(base.GetProtocol(), base.GetHost(), base.GetDataSet())
00042 {
00043 mQuidClass = quidClass;
00044 mConceptSet = conceptSet;
00045 mKeyword = keyword;
00046 }
00047
00048 virtual
00049 ~AnnotationTableLocator()
00050 {
00051 }
00052
00053 int
00054 GetQuidClass() const
00055 {
00056 return mQuidClass;
00057 }
00058
00059 String
00060 GetQuidClassString() const
00061 {
00062 return QuidClassToString(mQuidClass);
00063 }
00064
00065 String
00066 GetConceptSet() const
00067 {
00068 return mConceptSet;
00069 }
00070
00071 String
00072 GetKeyword() const
00073 {
00074 return mKeyword;
00075 }
00076
00077 void
00078 SetKeyword(CString keyword)
00079 {
00080 mKeyword = keyword;
00081 }
00082
00083 String
00084 ToString() const
00085 {
00086 return "AnnotationTableLocator(" + GetProtocol() + "," + GetHost()
00087 + "," + GetDataSet() + "," + GetQuidClassString() + ","
00088 + GetConceptSet() + "," + GetKeyword() + ")";
00089 }
00090
00091 private:
00092
00093 int mQuidClass;
00094 String mConceptSet;
00095 String mKeyword;
00096
00097 ILOG_VAR_DEC;
00098 };
00099
00100 ILOG_VAR_INIT(AnnotationTableLocator, Impala.Persistency);
00101
00102 std::ostream&
00103 operator<< (std::ostream& os, const AnnotationTableLocator& loc)
00104 {
00105 os << loc.ToString();
00106 return os;
00107 }
00108
00109 }
00110 }
00111
00112 #endif