|
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef CORACOOL_CORACOOLFOLDER_H
6 #define CORACOOL_CORACOOLFOLDER_H
13 #include "CoralBase/MessageStream.h"
14 #include "CoralBase/AttributeList.h"
15 #include "CoralBase/Attribute.h"
16 #include "CoolKernel/ValidityKey.h"
17 #include "CoolKernel/ChannelSelection.h"
18 #include "CoolKernel/RecordSpecification.h"
19 #include "CoolKernel/IField.h"
20 #include "CoolKernel/pointers.h"
31 class ITableDescription;
46 coral::ISessionProxy*
proxy, cool::IDatabasePtr cooldb,
74 const cool::ValidityKey
until,
78 const std::string& tagName=
"",
79 const bool userTagOnly=
false);
92 const cool::ValidityKey&
until,
93 const coral::Attribute& fkey,
95 const std::string& tagName=
"",
96 const bool userTagOnly=
false);
101 const cool::ValidityKey&
until,
104 const std::string& tagName=
"",
105 const bool userTagOnly=
false);
117 const std::string& tagName=
"");
123 const cool::ChannelSelection&
channels,
124 const std::string& tagName=
"");
129 const cool::ValidityKey&
since=cool::ValidityKeyMin,
130 const cool::ValidityKey&
until=cool::ValidityKeyMax,
131 const cool::ChannelSelection&
channels=cool::ChannelSelection(0),
132 const std::string& tagName=
"");
140 bool setAttrKey(coral::Attribute& attr,
const int keyval);
141 bool setFieldKey(cool::IField& attr,
const int keyval);
142 bool setFieldAttr(cool::IField& attr,
const coral::Attribute& keyval);
147 coral::ISessionProxy*
proxy();
148 const coral::ISessionProxy*
proxy()
const;
149 coral::ITable*
table();
155 const int fkey,
bool updatefk);
173 typedef std::vector<std::pair<std::string,std::string> >
AttrVec;
205 #endif // CORACOOL_CORACOOLFOLDER_H
cool::StorageType::TypeId nameToCoolType(const std::string &coolName) const
bool setupStorageBuffer()
bool setFieldKey(cool::IField &attr, const int keyval)
std::vector< std::pair< std::string, std::string > > AttrVec
cool::IFolderPtr coolFolder()
std::string m_pkeycolcoral
void setPrefetchAll(const bool prefetchAll)
CoraCoolSequence * m_seqfk
CoraCoolObjectIterPtr browseObjects(const cool::ValidityKey &pointInTime, const cool::ChannelSelection &channels, const std::string &tagName="")
void bulkInsert(const_iterator begin, const_iterator end, const int fkey, bool updatefk)
coral::AttributeList emptyAttrList() const
const std::string & coralPKey() const
CoraCoolFolder & operator=(const CoraCoolFolder &)=delete
coral::AttributeList * m_payloadbuf
coral::IBulkOperation * m_bulki
const std::string & coralFKey() const
bool setAttrKey(coral::Attribute &attr, const int keyval)
std::string m_keycolcoral
std::vector< coral::AttributeList >::const_iterator const_iterator
int getAttrKey(const coral::Attribute &attr)
const cool::RecordSpecification payloadSpecification() const
void referenceObject(const cool::ValidityKey &since, const cool::ValidityKey &until, const coral::Attribute &fkey, const cool::ChannelId &channelId=0, const std::string &tagName="", const bool userTagOnly=false)
std::string coralTableName() const
CoraCoolObjectPtr findObject(const cool::ValidityKey &pointInTime, const cool::ChannelId &channelId=0, const std::string &tagName="")
cool::IDatabasePtr m_cooldb
coral::ISessionProxy * proxy()
CoraCoolFolder(const std::string &coolfolder, coral::ISessionProxy *proxy, cool::IDatabasePtr cooldb, CoraCoolDatabase *coradb, coral::MessageStream &log)
CoraCoolFolder(const CoraCoolFolder &)=delete
void setOutputSpec(coral::IQuery *query)
const cool::IRecordSpecification & fkSpecification() const
cool::IFolderPtr m_coolfolder
bool setFieldAttr(cool::IField &attr, const coral::Attribute &keyval)
AttrVec::const_iterator AttrItr
boost::shared_ptr< CoraCoolObjectIter > CoraCoolObjectIterPtr
CoraCoolSequence * m_seqpk
boost::shared_ptr< CoraCoolObject > CoraCoolObjectPtr
void flushStorageBuffer()
int storeObject(const cool::ValidityKey &since, const cool::ValidityKey until, const_iterator begin, const_iterator end, const cool::ChannelId &channelId=0, const std::string &tagName="", const bool userTagOnly=false)
coral::MessageStream & m_log
Define macros for attributes used to control the static checker.
coral::ISessionProxy * m_proxy
const coral::ITableDescription * m_tabledesc
void addPayload(const_iterator begin, const_iterator end)
CoraCoolDatabase * m_coradb