7 public class ResultDataInfo
: IInfo
9 public override string Name
11 get { return Catalog.GetString("Result Data"); }
14 public override string ShortName
16 get { return "ResData"; }
19 public override string Author
21 get { return "Bartosz Taudul"; }
24 public override string Description
26 get { return Catalog.GetString("This plugin shows raw data coming to block's input socket."); }
30 public class ResultDataFactory
: IFactory
32 IInfo _info
= new ResultDataInfo();
40 get { return IType.Out; }
43 public void Initialize()
47 public Plugin
.Base
Create()
49 return new ResultDataPlugin();
53 public class ResultDataPlugin
: Plugin
.Out
55 Gdk
.Pixbuf
[] itest
= null;
56 Gdk
.Pixbuf
[] ibase
= null;
60 public ResultDataPlugin()
62 _info
= new ResultDataInfo();
65 public override void DisplayResults()
68 throw new PluginException(Catalog
.GetString("Plugin is not ready to display results."));
70 new ResultData(ibase
, itest
, res
, match
);
73 public override void Work()
75 ICommResult r
= _in
[0] as ICommResult
;
77 itest
= new Gdk
.Pixbuf
[r
.Length
];
78 ibase
= new Gdk
.Pixbuf
[r
.OriginalBaseImages
.Length
];
82 for(int i
=0; i
<itest
.Length
; i
++)
84 IImage img
= r
.OriginalTestImages
[i
];
91 Gdk
.Pixbuf tmp
= img
.CreatePixbuf();
92 itest
[i
] = tmp
.ScaleSimple(Scale(img
.W
, scale
), Scale(img
.H
, scale
), Gdk
.InterpType
.Bilinear
);
95 for(int i
=0; i
<ibase
.Length
; i
++)
97 IImage img
= r
.OriginalBaseImages
[i
];
100 scale
= img
.W
/ 32.0;
102 scale
= img
.H
/ 32.0;
104 Gdk
.Pixbuf tmp
= img
.CreatePixbuf();
105 ibase
[i
] = tmp
.ScaleSimple(Scale(img
.W
, scale
), Scale(img
.H
, scale
), Gdk
.InterpType
.Bilinear
);
108 res
= new IResult
[r
.Length
];
109 for(int i
=0; i
<r
.Length
; i
++)
112 match
= r
.FindResultsSimple();
114 for(int i
=0; i
<r
.Length
; i
++)
121 private int Scale(int s
, double scale
)
123 int val
= (int)(s
/scale
);
131 public override int NumIn { get { return 1; }
}
133 public override string DescIn(int n
)
135 return Catalog
.GetString("Results to be displayed in raw form.");
138 private static string[] matchin
= new string[] { "result" }
;
139 public override string[] MatchIn { get { return matchin; }
}