diff --git a/common-tools/clara-io/pom.xml b/common-tools/clara-io/pom.xml index cbcc33c359..358a88ea7d 100644 --- a/common-tools/clara-io/pom.xml +++ b/common-tools/clara-io/pom.xml @@ -3,14 +3,14 @@ 4.0.0 org.jlab.clas clara-io - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT jar org.jlab.clas clas12rec ../../parent/pom.xml - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT diff --git a/common-tools/clas-analysis/pom.xml b/common-tools/clas-analysis/pom.xml index 55e0bbb09e..5926abe517 100644 --- a/common-tools/clas-analysis/pom.xml +++ b/common-tools/clas-analysis/pom.xml @@ -3,63 +3,63 @@ 4.0.0 org.jlab.clas clas-analysis - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT jar org.jlab.clas clas12rec ../../parent/pom.xml - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-utils - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-physics - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-io - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-geometry - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-jcsg - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas swim-tools - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-detector - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-reco - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT diff --git a/common-tools/clas-detector/pom.xml b/common-tools/clas-detector/pom.xml index 1f140e3c44..feeed6c4f5 100644 --- a/common-tools/clas-detector/pom.xml +++ b/common-tools/clas-detector/pom.xml @@ -3,21 +3,21 @@ 4.0.0 org.jlab.clas clas-detector - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT jar org.jlab.clas clas12rec ../../parent/pom.xml - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-utils - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT @@ -29,13 +29,13 @@ org.jlab.clas clas-io - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-geometry - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT diff --git a/common-tools/clas-detector/src/main/java/org/jlab/detector/helicity/DecoderBoardTest.java b/common-tools/clas-detector/src/main/java/org/jlab/detector/helicity/DecoderBoardTest.java index 0ea986a77c..977598557a 100644 --- a/common-tools/clas-detector/src/main/java/org/jlab/detector/helicity/DecoderBoardTest.java +++ b/common-tools/clas-detector/src/main/java/org/jlab/detector/helicity/DecoderBoardTest.java @@ -3,92 +3,52 @@ import java.util.Date; import org.jlab.jnp.hipo4.data.Bank; import org.jlab.jnp.hipo4.data.Event; -import org.jlab.jnp.hipo4.data.SchemaFactory; import org.jlab.jnp.hipo4.io.HipoReader; import org.jlab.jnp.hipo4.io.HipoWriterSorted; public class DecoderBoardTest { - public static String toString(int bits) { - StringBuilder s = new StringBuilder(); - for (int i=31; i>=0; --i) s.append((bits>>i)&1); - return s.toString(); - } - - public static String toString(Bank b) { - StringBuilder s = new StringBuilder(); - s.append("Timestamp/nPair/seed: "); - s.append(b.getLong("timestamp",0)); - s.append("/"); - s.append(b.getInt("nPair",0)); - s.append("/"); - s.append(b.getInt("helicitySeed",0)); - s.append("\nPair: "); - s.append(toString(b.getInt("pairArray",0))); - s.append(String.format(" %d",b.getInt("pair",0))); - s.append("\nPattern: "); - s.append(toString(b.getInt("patternArray",0))); - s.append(String.format(" %d",b.getInt("pattern",0))); - s.append("\nHelicity: "); - s.append(toString(b.getInt("helicityArray",0))); - s.append(String.format(" %d",b.getInt("helicity",0))); - s.append("\nHelicityP: "); - s.append(toString(b.getInt("helicityPArray",0))); - s.append("\nHelicityP0:"); - StringBuilder s3 = new StringBuilder(); - for (int i=31; i>=0; --i) { - if (((b.getInt("patternArray",0)>>i)&1) == 1) { - s3.append((b.getInt("helicityArray",0)>>i)&1); - } - } - s.append(String.format("%32s",s3)); - s.append("\nHelicityP1:"); - StringBuilder s2 = new StringBuilder(); - for (int i=31; i>=0; --i) { - if (((b.getInt("patternArray",0)>>i)&1) == 0) { - s2.append((b.getInt("helicityArray",0)>>i)&1); - } - } - s.append(String.format("%32s",s2)); - s.append("\n"); - return s.toString(); - } - public static void main(String args[]) { - String filename = "/Users/baltzell/Software/coatjava/iss166+167-eventordering+maurik/clas_019400.evio.00040.hipo"; - HelicitySequenceManager hsm = new HelicitySequenceManager(8, filename); - try (HipoWriterSorted writer = new HipoWriterSorted()) { - writer.getSchemaFactory().initFromDirectory("/Users/baltzell/Software/coatjava/iss171-heldecoder/etc/bankdefs/hipo4"); - writer.setCompressionType(2); - writer.open(String.format("/Users/baltzell/xx-%d.hipo",(new Date()).getTime())); + String inputFile = args.length>0?args[0]:"/Users/baltzell/Software/coatjava/nab-cleanup/0.hipo"; + String outputFile = true ? null : String.format("/Users/baltzell/xx-%d.hipo",(new Date()).getTime()); + //HelicitySequenceManager hsm = new HelicitySequenceManager(8, inputFile); + HipoWriterSorted writer = new HipoWriterSorted(); + if (outputFile != null) { + writer.getSchemaFactory().initFromDirectory("/Users/baltzell/Software/coatjava/nab-cleanup/etc/bankdefs/hipo4"); + writer.setCompressionType(2); + writer.open(outputFile); + } HipoReader reader = new HipoReader(); - SchemaFactory schema = writer.getSchemaFactory(); - reader.open(filename); - Bank decoder = new Bank(schema.getSchema("HEL::decoder")); - Bank online = new Bank(schema.getSchema("HEL::online")); - Bank config = new Bank(schema.getSchema("RUN::config")); - Bank compare = new Bank(schema.getSchema("hel")); + reader.open(inputFile); Event event = new Event(); + Bank decoder = new Bank(reader.getSchemaFactory().getSchema("HEL::decoder")); + Bank online = new Bank(reader.getSchemaFactory().getSchema("HEL::online")); + Bank config = new Bank(reader.getSchemaFactory().getSchema("RUN::config")); + //Bank compare = new Bank(writer.getSchemaFactory().getSchema("hel")); + int n=0; while (reader.hasNext()) { reader.nextEvent(event); - if (event.hasBank(schema.getSchema("HEL::decoder"))) { + if (event.hasBank(reader.getSchemaFactory().getSchema("HEL::decoder"))) { event.read(decoder); event.read(config); event.read(online); - decoder.copyTo(compare); + //decoder.copyTo(compare); //compare.putByte("board", 0, DecoderBoardUtil.QUARTET.getWindowHelicity(decoder,8)); - compare.putByte("online", 0, online.getByte("helicityRaw",0)); - compare.putByte("offline", 0, hsm.search(event).value()); - compare.putLong("timestamp", 0, config.getLong("timestamp",0)); - Event e = new Event(); - e.write(compare); - writer.addEvent(e,event.getEventTag()); - System.out.println(toString(decoder)); - if (!DecoderBoardUtil.QUARTET.check(decoder)) break; - //System.out.println(hsm.search(event)); + //compare.putByte("online", 0, online.getByte("helicityRaw",0)); + //compare.putByte("offline", 0, hsm.search(event).value()); + //compare.putLong("timestamp", 0, config.getLong("timestamp",0)); + //Event e = new Event(); + //e.write(compare); + //if (outputFile != null) writer.addEvent(e,event.getEventTag()); + System.out.println(DecoderBoardUtil.toString(decoder)); + if (!DecoderBoardUtil.QUARTET.check(decoder)) { + System.out.println(DecoderBoardUtil.toString(decoder)); + ++n; + }//System.out.println(hsm.search(event)); //break; + //if (++n>100) break; } } - } + System.out.format("____________________________________________ %d ERRORS\n",n); } } diff --git a/common-tools/clas-detector/src/main/java/org/jlab/detector/helicity/DecoderBoardUtil.java b/common-tools/clas-detector/src/main/java/org/jlab/detector/helicity/DecoderBoardUtil.java index 7ffb6bac8f..90272f456c 100644 --- a/common-tools/clas-detector/src/main/java/org/jlab/detector/helicity/DecoderBoardUtil.java +++ b/common-tools/clas-detector/src/main/java/org/jlab/detector/helicity/DecoderBoardUtil.java @@ -87,4 +87,45 @@ else if (bank instanceof Bank) throw new IllegalArgumentException(); } + /** + * Get a string representation of a HEL::decoder bank for human consumption. + * @param b the HEL::decoder bank to stringify + * @return + */ + public static String toString(Bank b) { + StringBuilder s = new StringBuilder(); + s.append("Timestamp/nPair/seed: "); + s.append(b.getLong("timestamp",0)); + s.append("/"); + s.append(b.getInt("nPair",0)); + s.append("/"); + s.append(b.getInt("helicitySeed",0)); + s.append("\nPair: "); + s.append(toString(b.getInt("pairArray",0))); + s.append("\nPattern: "); + s.append(toString(b.getInt("patternArray",0))); + s.append("\nHelicity: "); + s.append(toString(b.getInt("helicityArray",0))); + s.append("\nHelicityP: "); + s.append(toString(b.getInt("helicityPArray",0))); + s.append("\nHelicityP0:"); + StringBuilder s3 = new StringBuilder(); + for (int i=31; i>=0; --i) { + if (((b.getInt("patternArray",0)>>i)&1) == 1) { + s3.append((b.getInt("helicityArray",0)>>i)&1); + } + } + s.append(String.format("%32s",s3)); + s.append("\nHelicityP1:"); + StringBuilder s2 = new StringBuilder(); + for (int i=31; i>=0; --i) { + if (((b.getInt("patternArray",0)>>i)&1) == 0) { + s2.append((b.getInt("helicityArray",0)>>i)&1); + } + } + s.append(String.format("%32s",s2)); + s.append("\n"); + return s.toString(); + } + } diff --git a/common-tools/clas-detector/src/main/java/org/jlab/detector/helicity/SequenceUtil.java b/common-tools/clas-detector/src/main/java/org/jlab/detector/helicity/SequenceUtil.java index d106af5c4f..c3d3ab9bce 100644 --- a/common-tools/clas-detector/src/main/java/org/jlab/detector/helicity/SequenceUtil.java +++ b/common-tools/clas-detector/src/main/java/org/jlab/detector/helicity/SequenceUtil.java @@ -24,6 +24,18 @@ public class SequenceUtil { // Whether to invert the bits during error-checking, for debugging: static boolean INVERT_BITS_CHECK = false; + /** + * Just convert bits to string, fixed-width, left-buffered with zeroes, + * since that doesn't seem to be included in the standard Java library. + * @param bits + * @return + */ + public static String toString(int bits) { + StringBuilder s = new StringBuilder(); + for (int i=SEQUENCE_LENGTH-1; i>=0; --i) s.append((bits>>i)&1); + return s.toString(); + } + /** * Pattern delay correction, as specified by JLab's injector group. * @param helicities the first helicity of the previous SEQUENCE_LENGTH patterns @@ -33,8 +45,9 @@ public class SequenceUtil { public static byte getPatternHelicity(int helicities, byte patternDelay) { int bit = 0; int register = 0; - for (int i=RNG_REGISTER_SIZE-1; i>=0; --i) + for (int i=RNG_REGISTER_SIZE-1; i>=0; --i) { register = ( ((helicities>>i)&1) | (register<<1) ) & 0x3FFFFFFF; + } for (int i=0; i>6) & 1; int bit28 = (register>>27) & 1; @@ -70,7 +83,7 @@ public static boolean checkHelicities(int patterns, int helicities, byte pattern if ( ((helicities>>(i-j))&1) != SequenceUtil.getWindowHelicity((byte)((helicities>>i)&1),(byte)j) ) { Logger.getLogger(SequenceUtil.class.getName()).log(Level.WARNING, - "Bad pattern/helicity: {0}/{1}", new Object[]{patterns, helicities}); + "Bad pattern / helicity: {0} / {1}", new Object[]{toString(patterns), toString(helicities)}); return false; } } @@ -87,7 +100,7 @@ public static boolean checkPairs(int pairs) { for (int i=0; i>i) & 0x3) != 1) { Logger.getLogger(SequenceUtil.class.getName()).log(Level.WARNING, - "Bad pairs: {0}", pairs); + "Bad pairs: {0}", toString(pairs)); return false; } } @@ -104,7 +117,7 @@ public static boolean checkPatterns(int patterns, byte patternLength) { for (int i=0; i<(SEQUENCE_LENGTH-patternLength+1); ++i) { if (Integer.bitCount((patterns>>i) & mask) != (INVERT_BITS_CHECK?patternLength-1:1)) { Logger.getLogger(SequenceUtil.class.getName()).log(Level.WARNING, - "Bad patterns: {0}", patterns); + "Bad patterns: {0}", toString(patterns)); return false; } } diff --git a/common-tools/clas-geometry/pom.xml b/common-tools/clas-geometry/pom.xml index fbb3170ede..b5d840f424 100644 --- a/common-tools/clas-geometry/pom.xml +++ b/common-tools/clas-geometry/pom.xml @@ -3,14 +3,14 @@ 4.0.0 org.jlab.clas clas-geometry - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT jar org.jlab.clas clas12rec ../../parent/pom.xml - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT diff --git a/common-tools/clas-io/pom.xml b/common-tools/clas-io/pom.xml index 94f03f1b3a..bda78dbdb2 100644 --- a/common-tools/clas-io/pom.xml +++ b/common-tools/clas-io/pom.xml @@ -3,14 +3,14 @@ 4.0.0 org.jlab.clas clas-io - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT jar org.jlab.clas clas12rec ../../parent/pom.xml - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT @@ -87,13 +87,13 @@ org.jlab.clas clas-utils - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-logging - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT compile diff --git a/common-tools/clas-jcsg/pom.xml b/common-tools/clas-jcsg/pom.xml index d47c3363bd..02f64fc019 100644 --- a/common-tools/clas-jcsg/pom.xml +++ b/common-tools/clas-jcsg/pom.xml @@ -3,14 +3,14 @@ 4.0.0 org.jlab.clas clas-jcsg - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT jar org.jlab.clas clas12rec ../../parent/pom.xml - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT @@ -27,12 +27,12 @@ org.jlab.clas clas-geometry - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-detector - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT java3d diff --git a/common-tools/clas-logging/pom.xml b/common-tools/clas-logging/pom.xml index c192ebd979..a2d86040b5 100644 --- a/common-tools/clas-logging/pom.xml +++ b/common-tools/clas-logging/pom.xml @@ -3,14 +3,14 @@ 4.0.0 org.jlab.clas clas-logging - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT jar org.jlab.clas clas12rec ../../parent/pom.xml - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT diff --git a/common-tools/clas-math/pom.xml b/common-tools/clas-math/pom.xml index e99dc4e496..c40b617c09 100644 --- a/common-tools/clas-math/pom.xml +++ b/common-tools/clas-math/pom.xml @@ -3,14 +3,14 @@ 4.0.0 org.jlab.clas clas-math - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT jar org.jlab.clas clas12rec ../../parent/pom.xml - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT diff --git a/common-tools/clas-physics/pom.xml b/common-tools/clas-physics/pom.xml index 10d15023a9..ec1a14bed7 100644 --- a/common-tools/clas-physics/pom.xml +++ b/common-tools/clas-physics/pom.xml @@ -4,14 +4,14 @@ org.jlab.clas clas-physics - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT jar org.jlab.clas clas12rec ../../parent/pom.xml - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT diff --git a/common-tools/clas-reco/pom.xml b/common-tools/clas-reco/pom.xml index 4455d1f755..2b975051d3 100644 --- a/common-tools/clas-reco/pom.xml +++ b/common-tools/clas-reco/pom.xml @@ -3,14 +3,14 @@ 4.0.0 org.jlab.clas clas-reco - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT jar org.jlab.clas clas12rec ../../parent/pom.xml - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT @@ -42,37 +42,37 @@ org.jlab.clas clas-math - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-io - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-logging - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-physics - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-utils - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-detector - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT diff --git a/common-tools/clas-tracking/pom.xml b/common-tools/clas-tracking/pom.xml index 1839ad9cb2..35e224913c 100644 --- a/common-tools/clas-tracking/pom.xml +++ b/common-tools/clas-tracking/pom.xml @@ -3,14 +3,14 @@ 4.0.0 org.jlab.clas clas-tracking - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT jar org.jlab.clas clas12rec ../../parent/pom.xml - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT @@ -22,7 +22,7 @@ org.jlab.clas swim-tools - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT jar diff --git a/common-tools/clas-utils/pom.xml b/common-tools/clas-utils/pom.xml index a8e8bc8f88..4ab00854b3 100644 --- a/common-tools/clas-utils/pom.xml +++ b/common-tools/clas-utils/pom.xml @@ -3,14 +3,14 @@ 4.0.0 org.jlab.clas clas-utils - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT jar org.jlab.clas clas12rec ../../parent/pom.xml - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT diff --git a/common-tools/cnuphys/magfield/pom.xml b/common-tools/cnuphys/magfield/pom.xml index 01f5496c0a..8955f9cb35 100644 --- a/common-tools/cnuphys/magfield/pom.xml +++ b/common-tools/cnuphys/magfield/pom.xml @@ -23,7 +23,7 @@ org.jlab.clas clas-math - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT diff --git a/common-tools/cnuphys/swimmer/pom.xml b/common-tools/cnuphys/swimmer/pom.xml index 99aac3d74a..9d7d44eb58 100644 --- a/common-tools/cnuphys/swimmer/pom.xml +++ b/common-tools/cnuphys/swimmer/pom.xml @@ -35,7 +35,7 @@ org.jlab.clas clas-math - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT diff --git a/common-tools/coat-lib/deployDistribution.sh b/common-tools/coat-lib/deployDistribution.sh index 0f4b3d48f4..73dae4fde5 100755 --- a/common-tools/coat-lib/deployDistribution.sh +++ b/common-tools/coat-lib/deployDistribution.sh @@ -8,7 +8,7 @@ cd `dirname $0` # Script is exporting existing Jar files to repository #------------------------------------------------------------------------------------------------- -VERSION=10.0.7 +VERSION=10.0.8 mvn org.apache.maven.plugins:maven-install-plugin:2.5.2:install-file \ -Dfile=target/coat-libs-${VERSION}-SNAPSHOT.jar \ diff --git a/common-tools/coat-lib/pom.xml b/common-tools/coat-lib/pom.xml index 16dd886f8e..aa55e56106 100644 --- a/common-tools/coat-lib/pom.xml +++ b/common-tools/coat-lib/pom.xml @@ -3,7 +3,7 @@ 4.0.0 org.jlab.clas coat-libs - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT pom @@ -93,67 +93,67 @@ org.jlab.clas clas-io - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clara-io - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-reco - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-utils - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-jcsg - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-detector - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-analysis - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-geometry - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-physics - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas swim-tools - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-tracking - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT diff --git a/common-tools/parent/pom.xml b/common-tools/parent/pom.xml index 7feef44210..85dbf905d3 100644 --- a/common-tools/parent/pom.xml +++ b/common-tools/parent/pom.xml @@ -3,7 +3,7 @@ org.jlab.clas common-tools - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT pom diff --git a/common-tools/pom.xml b/common-tools/pom.xml index 16e6a69599..0efa73590e 100644 --- a/common-tools/pom.xml +++ b/common-tools/pom.xml @@ -2,14 +2,14 @@ 4.0.0 org.jlab.clas common-tools - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT pom org.jlab.clas clas12rec ../parent/pom.xml - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT diff --git a/common-tools/swim-tools/pom.xml b/common-tools/swim-tools/pom.xml index e711021f26..78cf43a05b 100644 --- a/common-tools/swim-tools/pom.xml +++ b/common-tools/swim-tools/pom.xml @@ -3,21 +3,21 @@ 4.0.0 org.jlab.clas swim-tools - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT jar org.jlab.clas clas12rec ../../parent/pom.xml - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-reco - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT diff --git a/install-clara b/install-clara index d523a77739..717e6a5646 100755 --- a/install-clara +++ b/install-clara @@ -1,70 +1,76 @@ #!/usr/bin/env bash +# Default versions: +grapes=2.17 +clara=5.0.2 +coatjava=10.0.8 + # Abort on any non-zero exit codes: set -e function error() { - echo -e "$usage\n\nERROR: $@" + echo -e "\n$usage\n\nERROR: $@" exit 1 } function get() { [ "$debug" -eq 0 ] && wopts="--no-verbose" || wopts="" - [ "$#" -gt 1 ] && topts="-C $2 -xz" || topts="-xz" + [ "$#" -gt 1 ] && topts="-C $2 -xz" || topts="-xz" [ "$debug" -gt 0 ] && topts+="v" wget $wopts $1 tar $topts -f $(basename $1) } +function install() { + find clara-cre -exec touch {} + + chmod -R a+r clara-cre + chmod a+x clara-cre/bin/* + mv clara-cre $clara_home +} + function litter() { + exit_code=$1 if [ -d "$tmp_dir" ] then - if [ "$1" -ne 0 ] || [ "$debug" -gt 1 ] + if [ "$exit_code" -ne 0 ] || [ "$debug" -gt 1 ] then - echo -e "\nSee build directory for more info:\n\t$tmp_dir" + echo -e "\nSee temporary build directory for more info:\n\t$tmp_dir" else - rm -r $tmp_dir - echo -e "\nRemoved temporary build directory:\n\t$tmp_dir" + rm -r $tmp_dir && echo -e "\nRemoved temporary build directory:\n\t$tmp_dir" fi fi } -function cleanup() { - exit_code=$? - if [ "$exit_code" -eq 0 ] +function check() { + if compgen -G "$clara_home/lib/jclara-*.jar" > /dev/null then - chmod a+x clara-cre/bin/* - chmod -R a+r clara-cre - mv clara-cre $clara_home + echo -e "\n\$CLARA_HOME installed at:\n\t$clara_home" + else + echo -e "\n\$CLARA_HOME installed but looks broken:\n\t$clara_home" fi +} + +function cleanup() { + exit_code=$? + [ "$exit_code" -eq 0 ] && install litter $exit_code - if [ "$exit_code" -eq 0 ] - then - if compgen -G "$clara_home/lib/jclara-*.jar" > /dev/null - then - echo -e "\n\$CLARA_HOME installed at $clara_home" - fi - fi + [ "$exit_code" -eq 0 ] && check } trap cleanup EXIT # Configure: -grapes=2.17 -clara=5.0.2 -coatjava=9.0.1 debug=0 args=() -usage="Usage: install-clara [-v] [-f CLARA] [-v COATJAVA] [-g GRAPES] [-j JRE] PATH" +usage="Usage: install-clara [-v] [-f CLARA] [-c COATJAVA] [-g GRAPES] [-j JRE] PATH" info="\ - The default COATJAVA/CLARA/GRAPES versions are $coatjava/$clara/$grapes.\n\ -- COATJAVA can also be specified as a local coatjava installation.\n\ -- No JRE will be installed without the -j option.\n\ -- The -v option (repeatable) increases verbosity and can disable cleanup.\n" +- Unless requested, no JRE will be included in the installation.\n\ +- COATJAVA can also be specified as a local installation directory." while [[ $# -gt 0 ]] do case $1 in - -h) echo $usage && echo -e "\n$info" && exit 0 ;; + -h) echo -e "\n$usage" && echo -e "\n$info" && exit 1 ;; -f) clara="$2" && shift && shift ;; -c) coatjava="$2" && shift && shift ;; -g) grapes="$2" && shift && shift ;; @@ -81,12 +87,21 @@ clara_home="$args" [ "${#args[@]}" -gt 1 ] && error "Extra PATH arguments: ${args[@]:1}" [ -e "$clara_home" ] && error "Installation PATH already exists: $clara_home" mkdir -p $clara_home || error "Cannot create installation PATH: $clara_home" -clara_home=$(cd $clara_home && pwd) -rmdir $clara_home +clara_home=$(cd $clara_home && pwd) && rmdir $clara_home + +# Detect local COATJAVA installation and convert into an absolute path: +if compgen -G "$coatjava/lib/clas/coat-libs-*.jar" > /dev/null +then + coatjava=$(cd $coatjava && pwd) + echo -e "\nUsing local COATJAVA installation:\n\t$coatjava" +elif ! [[ "$coatjava" =~ ^[0-9]+\.[0-9]\.[0-9]$ ]] +then + echo -e "\n\nWARNING: COATJAVA doesn't look like a local installation nor version number: $coatjava" +fi # Do everything inside a new, temporary directory: [ -w "." ] || error "Current working directory is not writeable: \$PWD=$PWD" -tmp_dir=$(mktemp -d install-clara.tmp.XXXXXX) +tmp_dir=$(mktemp -d tmp.install-clara.XXXXXX) [ $? -ne 0 ] && error "Cannot create temporary directory: $tmp_dir" tmp_dir=$(cd $tmp_dir && pwd) echo -e "\nCreating temporary build directory:\n\t$tmp_dir" @@ -97,10 +112,8 @@ echo -e "\nRetrieving CLARA version $clara ..." get https://userweb.jlab.org/~gurjyan/clara-cre/clara-cre-$clara.tar.gz # COATJAVA: -if compgen -G "$coatjava/lib/clas/coat-libs-*.jar" > /dev/null +if ! compgen -G "$coatjava/lib/clas/coat-libs-*.jar" > /dev/null then - echo -e "\nUsing local COATJAVA installation: $coatjava" -else echo -e "\nRetrieving COATJAVA version $coatjava ..." get https://clasweb.jlab.org/clas12offline/distribution/coatjava/coatjava-$coatjava.tar.gz coatjava=./coatjava @@ -108,11 +121,11 @@ fi mkdir -p clara-cre/plugins/clas12/lib/clas mkdir -p clara-cre/plugins/clas12/lib/services mkdir -p clara-cre/plugins/clas12/config -cp -r $coatjava/etc clara-cre/plugins/clas12/. -cp -r $coatjava/bin clara-cre/plugins/clas12/. -cp -r $coatjava/lib/utils clara-cre/plugins/clas12/lib/. -cp -r $coatjava/lib/clas/* clara-cre/plugins/clas12/lib/clas/. -cp -r $coatjava/lib/services/* clara-cre/plugins/clas12/lib/services/. +cp -Lr $coatjava/etc clara-cre/plugins/clas12/. +cp -Lr $coatjava/bin clara-cre/plugins/clas12/. +cp -Lr $coatjava/lib/utils clara-cre/plugins/clas12/lib/. +cp -Lr $coatjava/lib/clas/* clara-cre/plugins/clas12/lib/clas/. +cp -Lr $coatjava/lib/services/* clara-cre/plugins/clas12/lib/services/. # GRAPES: echo -e "\nRetrieving GRAPES version $grapes ..." diff --git a/parent/pom.xml b/parent/pom.xml index b8c2475205..75a90eafe1 100644 --- a/parent/pom.xml +++ b/parent/pom.xml @@ -3,7 +3,7 @@ org.jlab.clas clas12rec - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT pom diff --git a/pom.xml b/pom.xml index 2156d349ab..64acd0ef11 100644 --- a/pom.xml +++ b/pom.xml @@ -2,14 +2,14 @@ 4.0.0 org.jlab.clas clas12 - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT pom org.jlab.clas clas12rec parent/pom.xml - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT diff --git a/reconstruction/alert/pom.xml b/reconstruction/alert/pom.xml index 28a2038dc7..f620154bb0 100644 --- a/reconstruction/alert/pom.xml +++ b/reconstruction/alert/pom.xml @@ -13,31 +13,31 @@ org.jlab.clas clas12rec ../../parent/pom.xml - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-reco - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-io - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT compile org.jlab.clas clas-tracking - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT compile org.jlab.clas clas-geometry - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT compile diff --git a/reconstruction/band/pom.xml b/reconstruction/band/pom.xml index 8b58873aef..a8ad99a746 100644 --- a/reconstruction/band/pom.xml +++ b/reconstruction/band/pom.xml @@ -13,14 +13,14 @@ org.jlab.clas clas12rec ../../parent/pom.xml - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-reco - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT diff --git a/reconstruction/cnd/pom.xml b/reconstruction/cnd/pom.xml index 7a0952699a..003b6585d8 100644 --- a/reconstruction/cnd/pom.xml +++ b/reconstruction/cnd/pom.xml @@ -13,7 +13,7 @@ org.jlab.clas clas12rec ../../parent/pom.xml - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT diff --git a/reconstruction/cvt/pom.xml b/reconstruction/cvt/pom.xml index 05c71ddac8..687d879099 100644 --- a/reconstruction/cvt/pom.xml +++ b/reconstruction/cvt/pom.xml @@ -13,7 +13,7 @@ org.jlab.clas clas12rec ../../parent/pom.xml - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT @@ -21,7 +21,7 @@ org.jlab.clas clas-jcsg - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT @@ -47,7 +47,7 @@ org.jlab.clas clas-tracking - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT diff --git a/reconstruction/dc/pom.xml b/reconstruction/dc/pom.xml index 8b642b55f1..7cf1757f5d 100644 --- a/reconstruction/dc/pom.xml +++ b/reconstruction/dc/pom.xml @@ -14,7 +14,7 @@ org.jlab.clas clas12rec ../../parent/pom.xml - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT @@ -22,19 +22,19 @@ org.jlab.clas clas-jcsg - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-reco - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-analysis - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT @@ -63,13 +63,13 @@ org.jlab.clas swim-tools - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-math - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT diff --git a/reconstruction/eb/pom.xml b/reconstruction/eb/pom.xml index fef31fbc57..36a6808a0e 100644 --- a/reconstruction/eb/pom.xml +++ b/reconstruction/eb/pom.xml @@ -13,7 +13,7 @@ org.jlab.clas clas12rec ../../parent/pom.xml - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT @@ -21,25 +21,25 @@ org.jlab.clas clas-utils - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-io - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-reco - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-analysis - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT diff --git a/reconstruction/ec/pom.xml b/reconstruction/ec/pom.xml index a35f5b2af1..9850c5bd1f 100644 --- a/reconstruction/ec/pom.xml +++ b/reconstruction/ec/pom.xml @@ -13,7 +13,7 @@ org.jlab.clas clas12rec ../../parent/pom.xml - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT @@ -21,13 +21,13 @@ org.jlab.clas clas-detector - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-analysis - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT diff --git a/reconstruction/fmt/pom.xml b/reconstruction/fmt/pom.xml index 8b080d692f..57556f4dc8 100644 --- a/reconstruction/fmt/pom.xml +++ b/reconstruction/fmt/pom.xml @@ -15,21 +15,21 @@ org.jlab.clas clas12rec ../../parent/pom.xml - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-jcsg - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT jar org.jlab.clas swim-tools - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT diff --git a/reconstruction/ft/pom.xml b/reconstruction/ft/pom.xml index adcc68e966..cb5651deb4 100644 --- a/reconstruction/ft/pom.xml +++ b/reconstruction/ft/pom.xml @@ -13,7 +13,7 @@ org.jlab.clas clas12rec ../../parent/pom.xml - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT @@ -21,7 +21,7 @@ org.jlab.clas clas-reco - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT diff --git a/reconstruction/htcc/pom.xml b/reconstruction/htcc/pom.xml index 5314115aa1..f4e6591990 100644 --- a/reconstruction/htcc/pom.xml +++ b/reconstruction/htcc/pom.xml @@ -13,7 +13,7 @@ org.jlab.clas clas12rec ../../parent/pom.xml - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT @@ -21,7 +21,7 @@ org.jlab.clas clas-reco - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT diff --git a/reconstruction/ltcc/pom.xml b/reconstruction/ltcc/pom.xml index 4ef0a73c2d..4746b80914 100644 --- a/reconstruction/ltcc/pom.xml +++ b/reconstruction/ltcc/pom.xml @@ -13,14 +13,14 @@ org.jlab.clas clas12rec ../../parent/pom.xml - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-reco - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT diff --git a/reconstruction/mc/pom.xml b/reconstruction/mc/pom.xml index dce7872e7c..c6a07c1470 100644 --- a/reconstruction/mc/pom.xml +++ b/reconstruction/mc/pom.xml @@ -13,7 +13,7 @@ org.jlab.clas clas12rec ../../parent/pom.xml - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT @@ -21,7 +21,7 @@ org.jlab.clas clas-reco - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT diff --git a/reconstruction/mltn/pom.xml b/reconstruction/mltn/pom.xml index 277c59a5a7..3fd7b1c63b 100644 --- a/reconstruction/mltn/pom.xml +++ b/reconstruction/mltn/pom.xml @@ -14,7 +14,7 @@ org.jlab.clas clas12rec ../../parent/pom.xml - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT @@ -34,13 +34,13 @@ org.jlab.clas clas-io - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-reco - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT diff --git a/reconstruction/pom.xml b/reconstruction/pom.xml index d22d9b26ca..29abddfe0f 100644 --- a/reconstruction/pom.xml +++ b/reconstruction/pom.xml @@ -3,14 +3,14 @@ org.jlab.clas reconstruction - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT pom org.jlab.clas clas12rec ../parent/pom.xml - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT diff --git a/reconstruction/raster/pom.xml b/reconstruction/raster/pom.xml index 83b6a024ca..72595c4d95 100644 --- a/reconstruction/raster/pom.xml +++ b/reconstruction/raster/pom.xml @@ -13,7 +13,7 @@ org.jlab.clas clas12rec ../../parent/pom.xml - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT @@ -21,7 +21,7 @@ org.jlab.clas clas-reco - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT diff --git a/reconstruction/rich/pom.xml b/reconstruction/rich/pom.xml index 9f4018f47d..793134da5d 100644 --- a/reconstruction/rich/pom.xml +++ b/reconstruction/rich/pom.xml @@ -13,7 +13,7 @@ org.jlab.clas clas12rec ../../parent/pom.xml - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT @@ -21,13 +21,13 @@ org.jlab.clas clas-reco - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-jcsg - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT diff --git a/reconstruction/rtpc/pom.xml b/reconstruction/rtpc/pom.xml index 3cf7e64edb..f5c1deebe3 100644 --- a/reconstruction/rtpc/pom.xml +++ b/reconstruction/rtpc/pom.xml @@ -13,7 +13,7 @@ org.jlab.clas clas12rec ../../parent/pom.xml - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT @@ -21,12 +21,12 @@ org.jlab.clas clas-reco - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-tracking - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT compile diff --git a/reconstruction/swaps/pom.xml b/reconstruction/swaps/pom.xml index b9b462d731..2602a87ea6 100644 --- a/reconstruction/swaps/pom.xml +++ b/reconstruction/swaps/pom.xml @@ -13,7 +13,7 @@ org.jlab.clas clas12rec ../../parent/pom.xml - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT @@ -21,19 +21,19 @@ org.jlab.clas clas-detector - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-io - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-reco - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT diff --git a/reconstruction/tof/pom.xml b/reconstruction/tof/pom.xml index 9dba752f70..42b89656a2 100644 --- a/reconstruction/tof/pom.xml +++ b/reconstruction/tof/pom.xml @@ -13,7 +13,7 @@ org.jlab.clas clas12rec ../../parent/pom.xml - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT @@ -21,7 +21,7 @@ org.jlab.clas clas-jcsg - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT diff --git a/reconstruction/urwell/pom.xml b/reconstruction/urwell/pom.xml index 37a53b17cd..956ed6f112 100644 --- a/reconstruction/urwell/pom.xml +++ b/reconstruction/urwell/pom.xml @@ -13,7 +13,7 @@ org.jlab.clas clas12rec ../../parent/pom.xml - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT @@ -21,13 +21,13 @@ org.jlab.clas clas-detector - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT org.jlab.clas clas-analysis - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT diff --git a/reconstruction/vtx/pom.xml b/reconstruction/vtx/pom.xml index 66bdfcfc37..c1fb6cbc1d 100644 --- a/reconstruction/vtx/pom.xml +++ b/reconstruction/vtx/pom.xml @@ -13,7 +13,7 @@ org.jlab.clas clas12rec ../../parent/pom.xml - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT @@ -33,13 +33,13 @@ org.jlab.clas swim-tools - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT jar org.jlab.clas clas-tracking - 10.0.7-SNAPSHOT + 10.0.8-SNAPSHOT jar