]> Creatis software - bbtk.git/blob - packages/std/src/bbstdGetIntervalNumberFromIntervalList.cxx
37ee9e6581203470e92e47872b35fabcf8368bdb
[bbtk.git] / packages / std / src / bbstdGetIntervalNumberFromIntervalList.cxx
1 #include "bbstdGetIntervalNumberFromIntervalList.h"
2 #include "bbstdPackage.h"
3
4 namespace bbstd
5 {
6
7 BBTK_ADD_BLACK_BOX_TO_PACKAGE(std,GetIntervalNumberFromIntervalList)
8 BBTK_BLACK_BOX_IMPLEMENTATION(GetIntervalNumberFromIntervalList,bbtk::AtomicBlackBox);
9
10 void GetIntervalNumberFromIntervalList::Process()
11 {
12   // Sets the default value, in the case of an inexisting value in the intervals. 
13   bbSetOutputIntervalNumber(bbGetInputErrorValue());
14   bool found = false;
15
16  // Looks for the first interval containing the input value.
17   for (int i = 0; i < (int) bbGetInputIntervalList().size() - 1; i++)
18     {
19       if (found == false)
20         {
21           if (bbGetInputValue() >=  bbGetInputIntervalList()[i] && bbGetInputValue() < bbGetInputIntervalList()[i+1]) 
22             {
23               bbSetOutputIntervalNumber(i);
24               found = true;
25             }
26         }
27     }
28
29 }
30
31 void GetIntervalNumberFromIntervalList::bbUserSetDefaultValues()
32 {
33   bbSetInputErrorValue(-1.0);
34 }
35
36 void GetIntervalNumberFromIntervalList::bbUserInitializeProcessing()
37 {
38  
39 }
40
41 void GetIntervalNumberFromIntervalList::bbUserFinalizeProcessing()
42 {
43   
44 }
45 }
46 // EO namespace bbstd
47
48