Ticket #53 (closed: fixed)

Opened 13 years ago

Last modified 5 years ago

Implement a Mapping table in the Geometry to allow grouping of detectors to spectra

Reported by: Nick Draper Owned by: Laurent Chapon
Priority: blocker Milestone: Iteration 9
Component: Keywords:
Cc: Blocked By:
Blocking: Tester:

Description (last modified by Nick Draper) (diff)

Use a mapping table to allow algorithms to select which dectectors contribute to a spectra. This should allow

  • 1-1
  • 1-many
  • many dectectors to many sectra

We need the detector groupd returned from a call to be able to support the same geometry operations (length angles etc).

Change History

comment:1 Changed 13 years ago by Nick Draper

  • Description modified (diff)

comment:2 Changed 13 years ago by Nick Draper

  • Description modified (diff)
  • Milestone changed from Iteration 3 to Iteration 4

moved to iteration 4

comment:3 Changed 13 years ago by Nick Draper

  • Milestone changed from Iteration 4 to Iteration 5

comment:4 Changed 13 years ago by Nick Draper

  • Owner Laurent Chapon deleted
  • Milestone changed from Iteration 5 to Iteration 6

comment:5 Changed 13 years ago by Nick Draper

  • Milestone changed from Iteration 6 to Iteration 7

comment:6 Changed 13 years ago by Nick Draper

  • Owner set to Laurent Chapon

comment:7 Changed 13 years ago by Nick Draper

  • Owner changed from Laurent Chapon to Russell Taylor

comment:8 Changed 12 years ago by Russell Taylor

  • Status changed from new to closed
  • Resolution set to fixed

(In [876]) Version 1 of a virtual/effective/grouped detector for holding a collection of detectors. Fixes #53. Re #103.

comment:9 Changed 12 years ago by Nick Draper

  • Status changed from closed to reopened
  • Resolution fixed deleted
  • Milestone changed from Iteration 7 to Iteration 8

comment:10 Changed 12 years ago by Nick Draper

  • Status changed from reopened to new
  • Owner changed from Russell Taylor to Laurent Chapon
  • Description modified (diff)

comment:11 Changed 12 years ago by Freddie Akeroyd

(In [914]) Add in an option not to read the raw data to make getting detector information quicker. Refs #53.

comment:12 Changed 12 years ago by Laurent Chapon

(In [919]) re #53

Change Workspace Class to hold a shared pointer to an Instrument rather than an in stance of an instrument. Propagated changes to various other files using the Workspace implementation.

comment:13 Changed 12 years ago by Laurent Chapon

(In [920]) re #53

Undo changes to template call.

comment:14 Changed 12 years ago by Laurent Chapon

(In [921]) re #53

Implementation of appendLeaf and appendAssembly methods with boost::shared_ptr<Geometry::CompAssembly> in LoadInstrument.cpp.

comment:15 Changed 12 years ago by Matt Clarke

(In [923]) Refs #53. Fixed some of the tests

comment:16 Changed 12 years ago by Matt Clarke

(In [924]) Refs #53. Constructor of workspace now creates a blank instrument.

comment:17 Changed 12 years ago by Laurent Chapon

(In [927]) re #53 Implementation of SpectraDetectorMap and associated algorithm for Spectra to IDetector mapping. Workspace has been changed and now hold a shared pointer to a SpectraDetectorMap. Very basic at the moment, need to implement most of SpectraDetectorMap functionalities.

comment:18 Changed 12 years ago by Laurent Chapon

(In [929]) re #53

DLLExport macro was missing in SpectraDetectorMap. Fixxed

comment:19 Changed 12 years ago by Nick Draper

(In [931]) re #53 added missing DLLExport

comment:20 Changed 12 years ago by Nick Draper

(In [932]) re #53 Fixed conetest issue

comment:21 Changed 12 years ago by Laurent Chapon

(In [933]) re #53

Added method to get IDetector List for a spectra key in SpectraDetectorTable

comment:22 Changed 12 years ago by Nick Draper

(In [954]) re #53 Improved test for the availability of unordered_map.h as linuxs1 does not have it. The Scons build will test for its presence and use it if available. If you are using another process to build it then you need to add -DHAS_UNORDERED_MAP_H to your compiler line.

comment:23 Changed 12 years ago by Laurent Chapon

(In [1045]) re #53

comment:24 Changed 12 years ago by Laurent Chapon

(In [1049]) re #53

Initialized various pointer to 0 in ISISRAW constructor. This was causing segmentation fault in the destructor in case the loadRaw algorithm failed to load the file

comment:25 Changed 12 years ago by Laurent Chapon

(In [1050]) re #53

minor change

comment:26 Changed 12 years ago by Nick Draper

Just the unit test to complete

comment:27 Changed 12 years ago by Nick Draper

  • Priority changed from major to blocker
  • Milestone changed from Iteration 8 to Iteration 9

comment:28 Changed 12 years ago by Laurent Chapon

(In [1061]) re #53

Minor change, add method to return the number of elements in the map

comment:29 Changed 12 years ago by Laurent Chapon

(In [1062]) re #53

Change Workspace2D to Workspace shared_ptr in LoadMappingTable.h

comment:30 Changed 12 years ago by Laurent Chapon

(In [1063]) re #53

Change Workspace2D to Workspace shared_ptr in LoadMappingTable.h

comment:31 Changed 12 years ago by Laurent Chapon

(In [1064]) re #53

Check-in the LoadMappingTable test. Tested so far with HET definition. Needs to be tested with other instruments eventually.

comment:32 Changed 12 years ago by Laurent Chapon

(In [1065]) re #53

Updated LoadRaw algorithm to read the SpectraDetectorMap. This is implemented as a sub-algorithm calling the LoadMappingTable. There is a slight penalty in doing that since the raw file is open another time but it is minimal compared to the time it takes to read data. The test LoadRawTest has been modified accordingly but there is currently a problem in the HET_definition.xml which does not contain all the individual pixel geometric information. New code in the LoadRawtest.h file is working (test with reading instrument from raw file instead of xml) but has been commented out for the moment.

comment:33 Changed 12 years ago by Russell Taylor

(In [1066]) Our current HET instrument definition file doesn't work with the spectra-detector mapping. Better to just make sure LoadRaw doesn't use it and defaults to getting the instrumend information from the RAW file. Re #53.

comment:34 Changed 12 years ago by Russell Taylor

(In [1067]) Some changes to the tests because of the change of name in the HET instrument definition file. Re #53.

comment:35 Changed 12 years ago by Nick Draper

(In [1072]) re #53 dllexport changes for windows

comment:36 Changed 12 years ago by Nick Draper

  • Status changed from new to closed
  • Resolution set to fixed

comment:37 Changed 5 years ago by Stuart Campbell

This ticket has been transferred to github issue 901

Note: See TracTickets for help on using tickets.