sip files).The LDF data format is defined in:
Also Online System Science Data Format (LDF) may be of assistance.
sip as described below. Just the compilation tools listed are sufficient.
Building with Visual Studio .NET 7.1 is supported (.sln files). The 7.0 project files (.vcproj) are also included but are no longer supported, so may be out of date.
Library: Open VS and load the LDF project. Build.
Example code: Open VS and load test/LDFdump. Build.
You'll be building in a build directory, e.g. LDF-BUILD. If at any point you don't like it's contents, delete it and start over. This doesn't affect the source tree in LDF.
> cvs checkout Online/LDF > mkdir Online/LDF-BUILD # substitute BUILD with whatever you like > cd Online/LDF
Execute the following shell script. This needs to be done only on a fresh cvs check-out or if the configure.in file changed or any change in the m4 macros in config/m4.
> ./autogen > cd ../LDF-BUILD
Run the configure procedure. If you're building in AFS space give it the option --disable-libtool-lock. If python is not installed in the default location, add the option --with-python-include=<python path> in the configure line. You can influence where the products are installed with the --prefix option. Do configure --help for more details.
> ../LDF/configure
Makefile.am files and generates the Makefile.in files, and autoconf to generate the configure script. The configure script will then generate the Makefiles and some other files that need configuration.
> make
libLDFc.so, which C++ programs use and LDF.so, which can be imported from python. It will also build the test executables are in test/.You can build the html documentation using
> make docs
Use
> make install
--prefix option to configure. If it was omitted, this command will install into /usr/local.test/Debug or test/Release, and is named LDFdump.exe. On Linux, the executable is test/LDFdump. Both have the similar syntax: LDFdump.exe <ldf filename>
ldf or .arch files)
FITS files can be run through RunControl/fits2Arch.py to generate an .ldf or .arch file that can be dumped using test/LDFdump.
test and execute the following from the command line: > python -i LDFdump.py
>>> testRaw(<file>) # dump a .ldf or .arch file >>> testFITS(<file>) # dump a FITS format file >>> testEBF(<file>) # dump a file containing "pure" EBF events, # without datagram encapsulation >>> testHex(<file>) # dump a hex dump from a text file # (Cut and paste the event dump generated # by evtCli or od -t x4.) >>> test(<buffer>) # dump a binary buffer. Several are defined in # LDFdump.py: temBuf(), aemBuf(), evtBuf(), etc. >>> testRaw_Dist(server) # Dump events from a multicast server
As well, the following runs testRaw(<file>) from the command line:
> python LDFdump.py <file>
LDFdump.cpp in the test directory. Another example might go as follows:
unsigned char* buffer.EBFeventBuffer(buffer) test()
{
MyLATcomponentIterator lci;
while (1)
{
unsigned char* buffer = readEvent();
if (!buffer) break;
LATevent* event = EBFeventBuffer(buffer).event();
lci.iterate(event);
}
}
For an example of the Python API, take a look at LDFdumper.py.
1.4.7