1 #ifndef __bbPackRecalageCalculateVectorBox_h_INCLUDED__
2 #define __bbPackRecalageCalculateVectorBox_h_INCLUDED__
3 #include "bbPackRecalage_EXPORT.h"
4 #include "bbtkAtomicBlackBox.h"
7 namespace bbPackRecalage
10 class bbPackRecalage_EXPORT CalculateVectorBox
12 public bbtk::AtomicBlackBox
14 BBTK_BLACK_BOX_INTERFACE(CalculateVectorBox,bbtk::AtomicBlackBox);
15 BBTK_DECLARE_INPUT(PointsX1,std::vector<int>);
16 BBTK_DECLARE_INPUT(PointsX2,std::vector<int>);
17 BBTK_DECLARE_INPUT(PointsY1,std::vector<int>);
18 BBTK_DECLARE_INPUT(PointsY2,std::vector<int>);
19 BBTK_DECLARE_INPUT(PointsZ1,std::vector<int>);
20 BBTK_DECLARE_INPUT(PointsZ2,std::vector<int>);
21 BBTK_DECLARE_INPUT(Labels1,std::vector<std::string>);
22 BBTK_DECLARE_INPUT(Labels2,std::vector<std::string>);
23 BBTK_DECLARE_OUTPUT(OutX,int);
24 BBTK_DECLARE_OUTPUT(OutY,int);
25 BBTK_DECLARE_OUTPUT(OutZ,int);
26 BBTK_DECLARE_OUTPUT(OutScaleX,int);
27 BBTK_DECLARE_OUTPUT(OutScaleY,int);
28 BBTK_DECLARE_OUTPUT(OutScaleZ,int);
29 BBTK_DECLARE_OUTPUT(OutAngle,double);
30 BBTK_PROCESS(Process);
34 BBTK_BEGIN_DESCRIBE_BLACK_BOX(CalculateVectorBox,bbtk::AtomicBlackBox);
35 BBTK_NAME("CalculateVectorBox");
36 BBTK_AUTHOR("jn.trillos44@uniandes.edu.co");
37 BBTK_DESCRIPTION("Box for calculating the cross and point multiplications of 2 vectors");
38 BBTK_CATEGORY("__CATEGORY__");
39 BBTK_INPUT(CalculateVectorBox,PointsX1,"List of points in X for the first vector",std::vector<int>,"");
40 BBTK_INPUT(CalculateVectorBox,PointsX2,"List of points in X for the second vector",std::vector<int>,"");
41 BBTK_INPUT(CalculateVectorBox,PointsY1,"List of points in Y for the first vector",std::vector<int>,"");
42 BBTK_INPUT(CalculateVectorBox,PointsY2,"List of points in Y for the second vector",std::vector<int>,"");
43 BBTK_INPUT(CalculateVectorBox,PointsZ1,"List of points in Z for the first vector",std::vector<int>,"");
44 BBTK_INPUT(CalculateVectorBox,PointsZ2,"List of points in Z for the second vector",std::vector<int>,"");
45 BBTK_INPUT(CalculateVectorBox,Labels1,"Labels of the points for the first vector",std::vector<std::string>,"");
46 BBTK_INPUT(CalculateVectorBox,Labels2,"Labels of the points for the second vector",std::vector<std::string>,"");
47 BBTK_OUTPUT(CalculateVectorBox,OutX,"Point in X for the cross multiplication",int,"");
48 BBTK_OUTPUT(CalculateVectorBox,OutY,"Point in Y for the cross multiplication",int,"");
49 BBTK_OUTPUT(CalculateVectorBox,OutZ,"Point in Z for the cross multiplication",int,"");
50 BBTK_OUTPUT(CalculateVectorBox,OutScaleX,"Difference in scale for X for the cross multiplication",int,"");
51 BBTK_OUTPUT(CalculateVectorBox,OutScaleY,"Difference in scale for Y for the cross multiplication",int,"");
52 BBTK_OUTPUT(CalculateVectorBox,OutScaleZ,"Difference in scale for Z for the cross multiplication",int,"");
53 BBTK_OUTPUT(CalculateVectorBox,OutAngle,"Angle that represents the dot multiplication",double,"");
54 BBTK_END_DESCRIBE_BLACK_BOX(CalculateVectorBox);
56 // EO namespace bbPackRecalage
58 #endif // __bbPackRecalageCalculateVectorBox_h_INCLUDED__