int fpga2ConfiguredFrames = 0;
int fpga1NonEmptyFrames = 0;
int fpga2NonEmptyFrames = 0;
for (; far.validFARAddress(); far.incrementFAR()) {
Frame f1 = fpga1.getFrame(far);
Frame f2 = fpga2.getFrame(far);
String msg = null;
// Collect statistics
if (f1.isConfigured()) {
fpga1ConfiguredFrames++;
if (!f1.getData().isEmpty())
fpga1NonEmptyFrames++;
}
if (f2.isConfigured()) {
fpga2ConfiguredFrames++;
if (!f2.getData().isEmpty())
fpga2NonEmptyFrames++;
}
// Check #1: see if frames are configured or not
if ( !f1.isConfigured() || !f2.isConfigured()) {
String umsg = null;
// Don't create a message if the ignore unconfigured frames option was set
if (ignoreUnconfiguredFrames) continue;
if (!f1.isConfigured() && f2.isConfigured() ) {
umsg = "FPGA 1 not configured";
if (!f2.getData().isEmpty())
umsg += " (non empty frame in FPGA2)";
else
umsg += " (empty frame in FPGA2)";
} else if (f1.isConfigured() && !f2.isConfigured()) {
umsg = "FPGA 2 not configured";
if (!f1.getData().isEmpty())
umsg += " (non empty frame in FPGA1)";
else
umsg += " (empty frame in FPGA1)";
}
msg = umsg;
} else {
// both frames configured
FrameData d1 = f1.getData();
FrameData d2 = f2.getData();
if (!d1.isEqual(d2)) {
diffFARs.add(far.getAddress());
if (d1.isEmpty())