void HouseKeeping();
std::list<PROTECTED_DELETE*> PROTECTED_DELETE::_objList;
+#ifndef WNT
pthread_mutex_t PROTECTED_DELETE::_listMutex;
+#else
+pthread_mutex_t PROTECTED_DELETE::_listMutex =
+ PTHREAD_MUTEX_INITIALIZER;
+#endif
std::list<GENERIC_DESTRUCTOR*> *GENERIC_DESTRUCTOR::Destructors = 0;
static bool atExitSingletonDone = false ;
}
else {
SALOMEDS::LongSeq_var aRow = SALOMEDS::AttributeTableOfInteger::_narrow(_corba_impl)->GetRow(theRow);
+ aLength = aRow->length();
for (i = 0; i < aLength; i++) aVector.push_back(aRow[i]);
}
}
else {
SALOMEDS::LongSeq_var aColumn = SALOMEDS::AttributeTableOfInteger::_narrow(_corba_impl)->GetColumn(theColumn);
+ aLength = aColumn->length();
for (i = 0; i < aLength; i++) aVector.push_back(aColumn[i]);
}
return aVector;
else {
SALOMEDS::LongSeq_var aSet =
SALOMEDS::AttributeTableOfInteger::_narrow(_corba_impl)->GetRowSetIndices(theRow);
+ aLength = aSet->length();
for (i = 0; i < aLength; i++) aVector.push_back(aSet[i]);
}
return aVector;
}
else {
SALOMEDS::DoubleSeq_var aRow = SALOMEDS::AttributeTableOfReal::_narrow(_corba_impl)->GetRow(theRow);
+ aLength = aRow->length();
for (i = 0; i < aLength; i++) aVector.push_back(aRow[i]);
}
}
else {
SALOMEDS::DoubleSeq_var aColumn = SALOMEDS::AttributeTableOfReal::_narrow(_corba_impl)->GetColumn(theColumn);
+ aLength = aColumn->length();
for (i = 0; i < aLength; i++) aVector.push_back(aColumn[i]);
}
return aVector;
}
else {
SALOMEDS::LongSeq_var aSet = SALOMEDS::AttributeTableOfReal::_narrow(_corba_impl)->GetRowSetIndices(theRow);
+ aLength = aSet->length();
for (i = 0; i < aLength; i++) aVector.push_back(aSet[i]);
}
return aVector;
else {
SALOMEDS::Study::ListOfSObject_var aSeq = SALOMEDS::AttributeTarget::_narrow(_corba_impl)->Get();
aLength = aSeq->length();
- aSO = new SALOMEDS_SObject(aSeq[i].in());
- for (i = 0; i < aLength; i++) aVector.push_back(_PTR(SObject)(aSO));
+ for (i = 0; i < aLength; i++) {
+ aSO = new SALOMEDS_SObject(aSeq[i].in());
+ aVector.push_back(_PTR(SObject)(aSO));
+ }
}
return aVector;
// Class attributes initialisation, for class method BaseTraceCollector::run
BaseTraceCollector* BaseTraceCollector::_singleton = 0;
+#ifndef WNT
pthread_mutex_t BaseTraceCollector::_singletonMutex;
+#else
+pthread_mutex_t BaseTraceCollector::_singletonMutex =
+ PTHREAD_MUTEX_INITIALIZER;
+#endif
sem_t BaseTraceCollector::_sem;
int BaseTraceCollector::_threadToClose = 0;
pthread_t* BaseTraceCollector::_threadId = 0; // used to control single run
sem_init(&_sem,0,0); // to wait until run thread is initialized
pthread_t traceThread;
- int bid;
int re2 = pthread_create(&traceThread, NULL,
- LocalTraceCollector::run, (void *)bid);
+ LocalTraceCollector::run, NULL);
sem_wait(&_sem);
_singleton = myInstance; // _singleton known only when init done
}