+2006-10-05 extensions in AliHLTTPCDisplay
+ - handling of new include directory structure of the HOMER header files
+ - default geometry file introduced
+ - library compile time and property functions added
+ - geometry file alice.geom added to distribution; to be installed in
+ <prefix>/share/alice-hlt
2006-09-07 HLT-v0-4
- TPC digit reader classes fetch row range from AliHLTTPCTransform
- code from TPC commissioning version merged
//____________________________________________________________________________________________________
Int_t AliHLTTPCDisplayMain::Connect( unsigned int cnt, const char** hostnames, unsigned short* ports, Char_t *gfile){
+ Char_t* defaultGeometry=NULL;
+#if defined(DEFAULT_GEOMETRY)
+ defaultGeometry=DEFAULT_GEOMETRY;
+#endif
+ if (gfile!=NULL) {
+ HLTDebug("probing geometry file %s", gfile);
+ ifstream test(gfile);
+ if (test.fail()) {
+ HLTWarning("unable to find geometry file %s, using default file", gfile);
+ gfile=defaultGeometry;
+ }
+ test.close();
+ } else {
+ HLTDebug("using default geometry file %s", gfile, defaultGeometry);
+ gfile=defaultGeometry;
+ }
+ if (gfile==NULL) {
+ HLTError("geometry file missing");
+ return -EINVAL;
+ }
#if defined(HAVE_HOMERREADER)
// -- input datatypes , reverse
Char_t* spptID="SRETSULC";
}
fConnect = kTRUE;
- // Initialize TPC Display Classes -- IMPORTANT... don't change the order of them
+ // INITIALIZE TPC DISPLAY Classes -- IMPORTANT... don't change the order of them
fDisplay3D = new AliHLTTPCDisplay3D(this, gfile);
if (ExistsRawData()){
return 0;
#else
- HLTFatal("HOMER raeder not available");
+ HLTFatal("HOMER raeder not available during package configuration, libAliHLTTPCDisplay compiled without HOMER support");
+ return -EFAULT;
#endif // defined(HAVE_HOMERREADER)
}
SetupTracks();
#else
- HLTFatal("HOMER raeder not available");
+ HLTFatal("HOMER raeder not available during package configuration, libAliHLTTPCDisplay compiled without HOMER support");
#endif // defined(HAVE_HOMERREADER)
}
// TAKE CARE !!! EXISTSxxxData() HANDLING of 3D will be done IN this class !!!
fDisplay3D->Draw();
#else
- HLTFatal("HOMER raeder not available");
+ HLTFatal("HOMER raeder not available during package configuration, libAliHLTTPCDisplay compiled without HOMER support");
#endif // defined(HAVE_HOMERREADER)
}
fPadCallback(fPt2Gui, binx);
}
}
-
-
// ---------------------------------------------------
private:
- AliHLTTPCDisplayMain(const AliHLTTPCDisplayMain &/*d*/):TObject(){;}
+ AliHLTTPCDisplayMain(const AliHLTTPCDisplayMain &/*d*/):TObject(), AliHLTLogging(){;}
AliHLTTPCDisplayMain& operator=(const AliHLTTPCDisplayMain &/*d*/){return *this;}
void SetSliceArray();
AliHLTTPCDisplayPadRow.cxx \
AliHLTTPCDisplayResiduals.cxx
+DEFAULT_GEOMETRY = alice.geom
+libAliHLTTPCDisplay_la_DATA = $(DEFAULT_GEOMETRY)
+libAliHLTTPCDisplay_ladir = $(pkgdatadir)
+AM_CPPFLAGS += -DDEFAULT_GEOMETRY=\"$(libAliHLTTPCDisplay_ladir)/$(DEFAULT_GEOMETRY)\"
+
# class header files, the link definition for the root dictionary
# will be created from the names of the header files
CLASS_HDRS = AliHLTTPCDisplayMain.h \
@ALIROOT_LDFLAGS@ \
@ALIROOT_LIBS@ \
@HOMER_LDFLAGS@ \
- -version-info 1:0:0
+ -version-info 1:1:0
+
+# automatic generation of data and time of library build
+COMPILE_INFO = AliHLTTPCDisplayCompileInfo.cxx
# set the file name for the generated root dictionary
DICTCPP = AliHLTTPCDisplay-DICT.cxx
# dictionary files and which are not part of the CLASS_HDRS
DICTINCLUDE = AliHLTTPCSpacePointData.h \
AliHLTTPCTrackArray.h
-nodist_libAliHLTTPCDisplay_la_SOURCES = $(DICTCPP)
+nodist_libAliHLTTPCDisplay_la_SOURCES = $(COMPILE_INFO) \
+ $(DICTCPP)
CLEANFILES =
include $(top_srcdir)/make.dict
+
+$(COMPILE_INFO): $(libAliHLTTPCDisplay_la_SOURCES) $(pkginclude_HEADERS) $(noinst_HEADERS) Makefile.am
+ @echo '//automatically generated compilation info' > $@
+ @echo '//!!! DO NOT EDIT THIS FILE !!!' >> $@
+ @echo '//add changes in Makefile.am' >> $@
+ @echo '#include <iostream>' >> $@
+ @echo 'void $(MODULE)CompileInfo( char*& date, char*& time)' >> $@
+ @echo '{date=__DATE__; time=__TIME__; return;}' >> $@
+ @echo >> $@
+ @echo 'extern "C" const char* __lib$(MODULE)Properties=""' >> $@
+ @echo '#if defined(HAVE_HOMERREADER) ' >> $@
+ @echo '"HOMER"' >> $@
+ @echo '#endif // defined(HAVE_HOMERREADER)' >> $@
+ @echo ';' >> $@
+ @echo >> $@
+ @echo 'void __init()'>> $@
+ @echo '{std::cout << "lib$(MODULE) build on " << __DATE__ << " - " << __TIME__ << std::endl;}'>> $@
save_LIBS=$LIBS
# currently the different versions of the HLT PubSub framework have a different
# directory layout
- if test -d ${with_pubsub}/include/HOMER/reader ; then
- HOMER_CPPFLAGS="-I${with_pubsub}/include/HOMER/reader"
+ if test -d ${with_pubsub}/include/HOMER ; then
+ HOMER_CPPFLAGS="-I${with_pubsub}/include/HOMER -I${with_pubsub}/include/HOMER/reader"
else
HOMER_CPPFLAGS="-I${with_pubsub}/src/Util/HOMER/reader/include -I${with_pubsub}/src/Util/HOMER/data/include"
fi