Differences
This shows you the differences between two versions of the page.
| Next revision | Previous revision | ||
| public:user_software:cr-tools:datareader [2011-10-18 11:56] – created Lars Bahren | public:user_software:cr-tools:datareader [2017-03-08 15:27] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 9: | Line 9: | ||
| * [[# | * [[# | ||
| * [[# | * [[# | ||
| + | * [[#Usage with C/C++ code]] | ||
| ==== Overview ==== | ==== Overview ==== | ||
| Line 39: | Line 40: | ||
| The [[lopesdoxy> | The [[lopesdoxy> | ||
| * Access to the same segment in multiple streams, e.g. when reading raw data recorded with the //LOFAR ITS//. | * Access to the same segment in multiple streams, e.g. when reading raw data recorded with the //LOFAR ITS//. | ||
| - | {{software: | + | {{DataReader stream navigation 01.png? |
| * Access to different segments in multiple streams | * Access to different segments in multiple streams | ||
| - | {{software: | + | {{DataReader stream navigation 02.png? |
| * Access to different segments withhin a single stream, e.g. when reading data from a [[lopesdoxy> | * Access to different segments withhin a single stream, e.g. when reading data from a [[lopesdoxy> | ||
| - | {{software: | + | {{DataReader stream navigation 03.png? |
| === Data flow === | === Data flow === | ||
| Line 49: | Line 50: | ||
| The figure below illustrates the data flow inside the DataReader: | The figure below illustrates the data flow inside the DataReader: | ||
| - | {{software: | + | {{DataReader data flow.png? |
| There is the option to insert a [[.Hanning Filter|Hanning Filter]] step before performing the Fourier transform; this can be used to reduce the sidelobes in the frequency domain, originating from cutting out a block of data (which is equivalent to the multiplication of the data with a box function). | There is the option to insert a [[.Hanning Filter|Hanning Filter]] step before performing the Fourier transform; this can be used to reduce the sidelobes in the frequency domain, originating from cutting out a block of data (which is equivalent to the multiplication of the data with a box function). | ||
| Line 161: | Line 162: | ||
| ==== Internal data initialization ==== | ==== Internal data initialization ==== | ||
| - | {{software: | + | {{datareader_init_sequence.png? |
| - | ===== Usage ===== | + | ==== Usage with C/C++ code ==== |
| - | ==== ... with C/C++ code ==== | + | - Creation of a new DataReader object: |
| - | + | ||
| - | === Usage within an application === | + | |
| - | + | ||
| - | <code cpp> | + | |
| #include < | #include < | ||
| #include < | #include < | ||
| Line 176: | Line 173: | ||
| LopesEvent *le = new LopesEvent (eventfile, | LopesEvent *le = new LopesEvent (eventfile, | ||
| | | ||
| - | | + | |
| - | | + | |
| dr = le; | dr = le; | ||
| - | + | </ | |
| - | // processing of the data | + | LopesEvent *le = new LopesEvent (eventfile, |
| + | | ||
| + | </ | ||
| + | - Reading in data for processing: <code cpp> | ||
| for (int block(0); block< | for (int block(0); block< | ||
| fft = dr-> | fft = dr-> | ||
| } | } | ||
| </ | </ | ||
| - | + | - Data selection: Selection of frequency channels and antennas can be performed directly within the DataReader, e.g. <code cpp> | |
| - | With the conversion arrays optional you can even use the simpler construction method | + | |
| - | <code cpp> | + | |
| - | LopesEvent *le = new LopesEvent (eventfile, | + | |
| - | | + | |
| - | </ | + | |
| - | + | ||
| - | === Data selection | + | |
| - | + | ||
| - | Selection of frequency channels and antennas can be performed directly within the DataReader, e.g. | + | |
| - | <code cpp> | + | |
| dr-> | dr-> | ||
| - | </ | + | </ |
| - | where '' | + | |
| - | {{software: | + | {{datareader_-_channel_selection.png? |
| + | \\ | ||
| + | ---- | ||
| + | <- [[public: | ||