18 ost << threadSeparator << iCopy <<
std::ends;
32 size_t pp = name.
find(
".") ;
33 if ( (pp > 0) && (pp <= name.
length()) ) {
34 parent_name = name.
substr(0,name.
find(
".")-1) ;
39 pp = parent_name.
find(threadSeparator) ;
40 if ( (pp > 0) && (pp <= parent_name.
length()) ) {
41 threadAppendix = parent_name.
substr(parent_name.
find(threadSeparator)) ;
43 return threadAppendix ;
56 size_t pp = name.
find(
".") ;
57 if ( (pp > 0) && (pp <= name.
length()) ) {
58 parent_name = name.
substr(0,name.
find(
".")-1) ;
63 pp = parent_name.
find(threadSeparator) ;
64 if ( (pp > 0) && (pp <= parent_name.
length()) ) {
65 genericName = parent_name.
substr(0,parent_name.
find(threadSeparator))+tool_name ;
86 (*m_threadMap)[0] =
"" ;
91 if ( !ThreadGaudiInstance ) ThreadGaudiInstance =
new ThreadGaudi();
99 if (p_threadMap->
count(s_pid) == 0 ) {
100 (*p_threadMap)[s_pid] = threadID ;
101 #ifdef THREAD_GAUDI__DEBUG 102 std::cout <<
" *** ThreadGaudi setThreadID *** value set for *** " << threadID <<
" thread ID : " << s_pid <<
std::endl ;
114 if ( p_threadMap->
find(s_pid) != p_threadMap->
end() ) {
std::unique_ptr< ThreadMap > m_threadMap
static ThreadGaudi * instance()
singleton access
const std::string & getThreadID()
get Gaudi ID of current pthread
void * ThreadHandle
A Thread handle.
ThreadGaudi * ThreadGaudiInstance
std::map< System::ThreadHandle, std::string > ThreadMap
std::string getGaudiThreadIDfromID(int iCopy)
helper function to extract Gaudi Thread ID from thread copy number
std::string getGaudiThreadGenericName(const std::string &name)
helper function to extract Gaudi instance name from thread copy name
singleton mapping the pthread ID to the Gaudi thread ID
ThreadMap * getThreadMap()
access the whole map
void setThreadID(const std::string &threadID)
associate Gaudi ID to pthread
const std::string threadSeparator
const std::string algToolSeparator
ThreadHandle threadSelf()
thread handle "accessor"
bool isGaudiThreaded(const std::string &name)
test if current Gaudi object is running /will run in a thread
std::string getGaudiThreadIDfromName(const std::string &name)
helper function to extract Gaudi Thread ID from thread copy name