pixlfm

package
v0.0.0-...-9ea7be0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 7, 2022 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Overview

Example (CombineNormalDwellSpectra_Mismatch)
s1 := converterModels.DetectorSampleByPMC{
	3:  []converterModels.DetectorSample{},
	44: []converterModels.DetectorSample{},
}
s2 := converterModels.DetectorSampleByPMC{
	82: []converterModels.DetectorSample{},
}

_, err := combineNormalDwellSpectra(s1, s2)
fmt.Printf("%v\n", err)
Output:

Found dwell spectrum PMC: 82 which has no corresponding normal spectrum
Example (CombineNormalDwellSpectra_OK)
s1 := converterModels.DetectorSampleByPMC{
	3:  []converterModels.DetectorSample{},
	44: []converterModels.DetectorSample{},
}
s2 := converterModels.DetectorSampleByPMC{
	44: []converterModels.DetectorSample{},
}

comb, err := combineNormalDwellSpectra(s1, s2)
fmt.Printf("%v\n", err)

combPMCs := []int{}
for k := range comb {
	combPMCs = append(combPMCs, int(k))
}
sort.Ints(combPMCs)

for _, pmc := range combPMCs {
	fmt.Printf("%v\n", pmc)
}
Output:

<nil>
3
44
Example (GetLatestFileVersions)
files := []string{
	"PE__D140_0654321403_000RXL_N001000011000045300330__J01.LBL",
	"PE__D140_0654321406_000RXL_N001000011000045300330__J01.LBL",
	"PE__D140_0654321408_000RXL_N001000011000045300330__J03.LBL",
	"PE__D140_0654321406_000RXL_N001000011000045300330__J03.LBL",
	"PE__D140_0654321406_000RXL_N001000011000045300330__J01.CSV",
	"PE__D140_0654321402_000RXL_N001000011000045300330__J02.CSV",
	"PE__D140_0654321406_000RXL_N001000011000045300330__J02.CSV",
	"PE__D140_0654321406_000RXL_N001000011000045300331__J02.CSV",
	"PE__D140_0654321406_000RXL_N001000011000045300331__J04.CSV",
	"PE__D140_0654321404_000RXL_N001000011000045300331__J04.CSV",
}

latests := getLatestFileVersions(files, logger.NullLogger{})

versionStrs := []string{}
for key := range latests {
	versionStrs = append(versionStrs, key)
}

sort.Strings(versionStrs)

for _, file := range versionStrs {
	meta := latests[file]
	fmt.Printf("%v sclk=%v version=%v\n", file, meta.secondaryTimestamp, meta.versionStr)
}
Output:

PE__D140_0654321402_000RXL_N001000011000045300330__J02.CSV sclk=0654321402 version=02
PE__D140_0654321404_000RXL_N001000011000045300331__J04.CSV sclk=0654321404 version=04
PE__D140_0654321406_000RXL_N001000011000045300330__J03.LBL sclk=0654321406 version=03
Example (IsAllDigits)
fmt.Printf("%v\n", isAllDigits("1234567890"))
fmt.Printf("%v\n", isAllDigits("9"))
fmt.Printf("%v\n", isAllDigits("0"))
fmt.Printf("%v\n", isAllDigits("01"))
fmt.Printf("%v\n", isAllDigits("10"))
fmt.Printf("%v\n", isAllDigits("12x4"))
fmt.Printf("%v\n", isAllDigits("12.4"))
Output:

true
true
true
true
true
false
false
Example (IsAlpha)
fmt.Printf("%v\n", isAlpha('0'))
fmt.Printf("%v\n", isAlpha('1'))
fmt.Printf("%v\n", isAlpha('8'))
fmt.Printf("%v\n", isAlpha('9'))
fmt.Printf("%v\n", isAlpha('a'))
fmt.Printf("%v\n", isAlpha('f'))
fmt.Printf("%v\n", isAlpha('z'))
fmt.Printf("%v\n", isAlpha('A'))
fmt.Printf("%v\n", isAlpha('L'))
fmt.Printf("%v\n", isAlpha('Z'))
fmt.Printf("%v\n", isAlpha('.'))
fmt.Printf("%v\n", isAlpha(' '))
fmt.Printf("%v\n", isAlpha('^'))
Output:

false
false
false
false
true
true
true
true
true
true
false
false
false
Example (LetterValue)
fmt.Printf("%v\n", letterValue('A'))
fmt.Printf("%v\n", letterValue('B'))
fmt.Printf("%v\n", letterValue('Z'))
fmt.Printf("%v\n", letterValue(' '))
fmt.Printf("%v\n", letterValue('a'))
fmt.Printf("%v\n", letterValue('0'))
Output:

0
1
25
-33
32
-17
Example (ParseFileName)
m, e := ParseFileName("INCSPRIMVSECONDARYT_TERPROGTSITDRIVSEQNUMRTTCAMSDCOPVE.EXT")
fmt.Printf("%v|%v\n", e, m)
printFNValues(m)

m, e = ParseFileName("hello.txt")
fmt.Printf("%v\n", e)

// pseudointensity file name example
m, e = ParseFileName("PS__D077T0637741109_000RPM_N001003600098356100640__J01.CSV")
fmt.Printf("%v|%v\n", e, m)
printFNValues(m)

// context image
m, e = ParseFileName("PCR_D077T0637741562_000EDR_N00100360009835610066000J01.PNG")
fmt.Printf("%v|%v\n", e, m)
printFNValues(m)

// bulk MSA
m, e = ParseFileName("PS__D077T0637746318_000RBS_N001003600098356103760__J01.MSA")
fmt.Printf("%v|%v\n", e, m)
printFNValues(m)

// spatial inputs (housekeeping)
m, e = ParseFileName("PE__D077T0637741109_000RSI_N001003600098356100660__J01.CSV")
fmt.Printf("%v|%v\n", e, m)
printFNValues(m)

// spectra
m, e = ParseFileName("PS__D077T0637741109_000RFS_N001003600098356100640__J01.CSV")
fmt.Printf("%v|%v\n", e, m)
printFNValues(m)

// Something with SCLK and SOL
m, e = ParseFileName("PS__1033_0012345678_000RFS_N001003600098356100640__J01.CSV")
fmt.Printf("%v|%v\n", e, m)
printFNValues(m)
Output:

<nil>|{IN C S PRIM V SECONDARYT TER PRO G T SIT DRIV SEQNUMRTT CAMS D CO P VE}
PMC=0|PMC only stored for PIXL files
RTT=0|Failed to get RTT from: SEQNUMRTT
SCLK=0|Failed to get SCLK from: SECONDARYT
SOL=PRIM|<nil>
Failed to parse meta from file name
<nil>|{PS _ _ D077 T 0637741109 000 RPM _ N 001 0036 000983561 0064 0 __ J 01}
PMC=64|<nil>
RTT=983561|<nil>
SCLK=637741109|<nil>
SOL=D077|<nil>
<nil>|{PC R _ D077 T 0637741562 000 EDR _ N 001 0036 000983561 0066 0 00 J 01}
PMC=66|<nil>
RTT=983561|<nil>
SCLK=637741562|<nil>
SOL=D077|<nil>
<nil>|{PS _ _ D077 T 0637746318 000 RBS _ N 001 0036 000983561 0376 0 __ J 01}
PMC=376|<nil>
RTT=983561|<nil>
SCLK=637746318|<nil>
SOL=D077|<nil>
<nil>|{PE _ _ D077 T 0637741109 000 RSI _ N 001 0036 000983561 0066 0 __ J 01}
PMC=66|<nil>
RTT=983561|<nil>
SCLK=637741109|<nil>
SOL=D077|<nil>
<nil>|{PS _ _ D077 T 0637741109 000 RFS _ N 001 0036 000983561 0064 0 __ J 01}
PMC=64|<nil>
RTT=983561|<nil>
SCLK=637741109|<nil>
SOL=D077|<nil>
<nil>|{PS _ _ 1033 _ 0012345678 000 RFS _ N 001 0036 000983561 0064 0 __ J 01}
PMC=64|<nil>
RTT=983561|<nil>
SCLK=12345678|<nil>
SOL=1033|<nil>
Example (ParseSpectraCSVData_OK)
lines := [][]string{
	[]string{"SCLK_A", "SCLK_B", "PMC", "real_time_A", "real_time_B", "live_time_A", "live_time_B", "XPERCHAN_A", "XPERCHAN_B", "OFFSET_A", "OFFSET_B"},
	[]string{"11", "12", "33", "17.7", "17.8", "17.1", "17.2", "17.5", "17.6", "17.3", "17.4"},
	[]string{"13", "14", "34", "18.7", "18.8", "18.1", "18.2", "18.5", "18.6", "18.3", "18.4"},
	[]string{"PMC", "x", "y", "z"},
	[]string{"33", "10", "20", "30"},
	[]string{"34", "11", "21", "31"},
	[]string{"A_1", "A_2", "A_3", "A_4", "A_5", "A_6"},
	[]string{"21", "22", "23", "24", "25", "26"},
	[]string{"121", "122", "123", "124", "125", "126"},
	[]string{"B_1", "B_2", "B_3", "B_4", "B_5", "B_6"},
	[]string{"41", "42", "43", "44", "45", "46"},
	[]string{"141", "142", "143", "144", "145", "146"},
}
data, err := parseSpectraCSVData(lines, "Normal", logger.NullLogger{})

fmt.Printf("%v\n", err)

combPMCs := []int{}
for k := range data {
	combPMCs = append(combPMCs, int(k))
}
sort.Ints(combPMCs)

for _, pmc := range combPMCs {
	s := data[int32(pmc)]
	fmt.Printf("pmc[%v]\n", pmc)
	for detIdx := range s {
		fmt.Printf(" det[%v]\n  %v\n", detIdx, s[detIdx].ToString())
	}
}
Output:

<nil>
pmc[33]
 det[0]
  meta [DETECTOR_ID:A/s LIVETIME:17.1/f OFFSET:17.3/f PMC:33/i READTYPE:Normal/s REALTIME:17.7/f SCLK:11/i XPERCHAN:17.5/f] spectrum [21 22 23 24 25 26]
 det[1]
  meta [DETECTOR_ID:B/s LIVETIME:17.2/f OFFSET:17.4/f PMC:33/i READTYPE:Normal/s REALTIME:17.8/f SCLK:12/i XPERCHAN:17.6/f] spectrum [41 42 43 44 45 46]
pmc[34]
 det[0]
  meta [DETECTOR_ID:A/s LIVETIME:18.1/f OFFSET:18.3/f PMC:34/i READTYPE:Normal/s REALTIME:18.7/f SCLK:13/i XPERCHAN:18.5/f] spectrum [121 122 123 124 125 126]
 det[1]
  meta [DETECTOR_ID:B/s LIVETIME:18.2/f OFFSET:18.4/f PMC:34/i READTYPE:Normal/s REALTIME:18.8/f SCLK:14/i XPERCHAN:18.6/f] spectrum [141 142 143 144 145 146]
Example (ParseSpectraCSVData_SpectrumTableBadData)
lines := [][]string{
	[]string{"SCLK_A", "SCLK_B", "PMC", "real_time_A", "real_time_B", "live_time_A", "live_time_B", "XPERCHAN_A", "XPERCHAN_B", "OFFSET_A", "OFFSET_B"},
	[]string{"11", "12", "33", "17.7", "17.8", "17.1", "17.2", "17.5", "17.6", "17.3", "17.4"},
	[]string{"13", "14", "34", "18.7", "18.8", "18.1", "18.2", "18.5", "18.6", "18.3", "18.4"},
	[]string{"PMC", "x", "y", "z"},
	[]string{"33", "10", "20", "30"},
	[]string{"34", "11", "21", "31"},
	[]string{"A_1", "A_2", "A_3", "A_4", "A_5", "A_6"},
	[]string{"21", "22", "something", "24", "25", "26"},
	[]string{"121", "122", "123", "124", "125", "126"},
	[]string{"B_1", "B_2", "B_3", "B_4", "B_5", "B_6"},
	[]string{"41", "42", "43", "44", "45", "46"},
	[]string{"141", "142", "143", "144", "145", "146"},
}

data, err := parseSpectraCSVData(lines, "Normal", logger.NullLogger{})
fmt.Printf("%v|%v\n", data, err)
Output:

map[]|row 7, col 3 - failed to read value, got: something
Example (ParseSpectraCSVData_SpectrumTableDiffColCounts)
lines := [][]string{
	[]string{"SCLK_A", "SCLK_B", "PMC", "real_time_A", "real_time_B", "live_time_A", "live_time_B", "XPERCHAN_A", "XPERCHAN_B", "OFFSET_A", "OFFSET_B"},
	[]string{"11", "12", "33", "17.7", "17.8", "17.1", "17.2", "17.5", "17.6", "17.3", "17.4"},
	[]string{"13", "14", "34", "18.7", "18.8", "18.1", "18.2", "18.5", "18.6", "18.3", "18.4"},
	[]string{"PMC", "x", "y", "z"},
	[]string{"33", "10", "20", "30"},
	[]string{"34", "11", "21", "31"},
	[]string{"A_1", "A_2", "A_3", "A_4", "A_5", "A_6"},
	[]string{"21", "22", "23", "24", "25", "26"},
	[]string{"121", "122", "123", "124", "125", "126"},
	[]string{"B_1", "B_2", "B_3", "B_4", "B_5", "B_6", "B_7"},
	[]string{"41", "42", "43", "44", "45", "46", "47"},
	[]string{"141", "142", "143", "144", "145", "146", "147"},
}

data, err := parseSpectraCSVData(lines, "Normal", logger.NullLogger{})
fmt.Printf("%v|%v\n", data, err)
Output:

map[]|row 9 - differing channel count found, A was 6, B is 7
Example (ParseSpectraCSVData_SpectrumTablesDifferingRows)
lines := [][]string{
	[]string{"SCLK_A", "SCLK_B", "PMC", "real_time_A", "real_time_B", "live_time_A", "live_time_B", "XPERCHAN_A", "XPERCHAN_B", "OFFSET_A", "OFFSET_B"},
	[]string{"11", "12", "33", "17.7", "17.8", "17.1", "17.2", "17.5", "17.6", "17.3", "17.4"},
	[]string{"13", "14", "34", "18.7", "18.8", "18.1", "18.2", "18.5", "18.6", "18.3", "18.4"},
	[]string{"PMC", "x", "y", "z"},
	[]string{"33", "10", "20", "30"},
	[]string{"34", "11", "21", "31"},
	[]string{"A_1", "A_2", "A_3", "A_4", "A_5", "A_6"},
	[]string{"21", "22", "23", "24", "25", "26"},
	[]string{"121", "122", "123", "124", "125", "126"},
	[]string{"B_1", "B_2", "B_3", "B_4", "B_5", "B_6"},
	[]string{"41", "42", "43", "44", "45", "46"},
}

data, err := parseSpectraCSVData(lines, "Normal", logger.NullLogger{})
fmt.Printf("%v|%v\n", data, err)
Output:

map[]|A table had 2 rows, B had 1
Example (ParseSpectraCSVData_TopTableErrors)
lines := [][]string{
	[]string{"SCLK_A", "SCLK_B", "PMC", "XPERCHAN_A", "XPERCHAN_B"},
}
data, err := parseSpectraCSVData(lines, "Normal", logger.NullLogger{})
fmt.Printf("%v|%v\n", data, err)

lines = [][]string{
	[]string{"SCLK_A", "SCLK_B", "PMC", "real_time_A", "real_time_B", "live_time_A", "live_time_B", "XPERCHAN_A", "XPERCHAN_B", "OFFSET_A", "OFFSET_B"},
	[]string{"11", "12", "33", "17.7", "17.8", "17.1", "17.2", "17.5", "17.6", "17.3"},
}
data, err = parseSpectraCSVData(lines, "Normal", logger.NullLogger{})
fmt.Printf("%v|%v\n", data, err)

lines = [][]string{
	[]string{"SCLK_A", "SCLK_B", "PMC", "real_time_A", "real_time_B", "live_time_A", "live_time_B", "XPERCHAN_A", "XPERCHAN_B", "OFFSET_A", "OFFSET_B"},
	[]string{"11", "12", "33", "17.7", "17.8", "17.1", "17.2", "17.5", "17.6", "17.3", "17.4", "666"},
}
data, err = parseSpectraCSVData(lines, "Normal", logger.NullLogger{})
fmt.Printf("%v|%v\n", data, err)

lines = [][]string{
	[]string{"SCLK_A", "SCLK_B", "PMC", "real_time_A", "real_time_B", "live_time_A", "live_time_B", "XPERCHAN_A", "XPERCHAN_B", "OFFSET_A", "OFFSET_B"},
	[]string{"11", "something", "33", "17.7", "17.8", "17.1", "17.2", "17.5", "17.6", "17.3", "17.4"},
}
data, err = parseSpectraCSVData(lines, "Normal", logger.NullLogger{})
fmt.Printf("%v|%v\n", data, err)

lines = [][]string{
	[]string{"SCLK_A", "SCLK_B", "PMC", "real_time_A", "real_time_B", "live_time_A", "live_time_B", "XPERCHAN_A", "XPERCHAN_B", "OFFSET_A", "OFFSET_B"},
	[]string{"11", "12", "something", "17.7", "17.8", "17.1", "17.2", "17.5", "17.6", "17.3", "17.4"},
}
data, err = parseSpectraCSVData(lines, "Normal", logger.NullLogger{})
fmt.Printf("%v|%v\n", data, err)

lines = [][]string{
	[]string{"SCLK_A", "SCLK_B", "PMC", "real_time_A", "real_time_B", "live_time_A", "live_time_B", "XPERCHAN_A", "XPERCHAN_B", "OFFSET_A", "OFFSET_B"},
	[]string{"11", "12", "33", "17.7", "17.8", "17.1", "something", "17.5", "17.6", "17.3", "17.4"},
}
data, err = parseSpectraCSVData(lines, "Normal", logger.NullLogger{})
fmt.Printf("%v|%v\n", data, err)
Output:

map[]|Unexpected columns in metadata table: [SCLK_A SCLK_B PMC XPERCHAN_A XPERCHAN_B]
map[]|row 1 - expected 11 metadata items in row, got: 10
map[]|row 1 - expected 11 metadata items in row, got: 12
map[]|row 1 - expected SCLK, got: something
map[]|row 1 - expected PMC, got: something
map[]|row 1 - live_time_B expected float, got: something
Example (SplitSpectraCSVTables_OneTable)
lines := [][]string{
	[]string{"SCLK_A", "SCLK_B", "PMC", "real_time_A", "real_time_B", "live_time_A", "live_time_B", "XPERCHAN_A", "XPERCHAN_B", "OFFSET_A", "OFFSET_B"},
	[]string{"11", "12", "33", "17.7", "17.8", "17.1", "17.2", "17.5", "17.6", "17.3", "17.4"},
	[]string{"PMC", "x", "y", "z"},
	[]string{"33", "10", "20", "30"},
	[]string{"A_1", "A_2", "A_3", "A_4", "A_5", "A_6"},
	[]string{"21", "22", "23", "24", "25", "26"},
	[]string{"B_1", "B_2", "B_3", "B_4", "B_5", "B_6"},
	[]string{"41", "42", "43", "44", "45", "46"},
}

data1, data2 := splitSpectraCSVTables(lines)
fmt.Printf("table1=%v, table2=%v\n", len(data1), len(data2))
fmt.Printf("%v\n", data1[0])
Output:

table1=8, table2=0
[SCLK_A SCLK_B PMC real_time_A real_time_B live_time_A live_time_B XPERCHAN_A XPERCHAN_B OFFSET_A OFFSET_B]
Example (SplitSpectraCSVTables_TwoTable)
lines := [][]string{
	[]string{"SCLK_A", "SCLK_B", "PMC", "real_time_A", "real_time_B", "live_time_A", "live_time_B", "XPERCHAN_A", "XPERCHAN_B", "OFFSET_A", "OFFSET_B"},
	[]string{"11", "12", "33", "17.7", "17.8", "17.1", "17.2", "17.5", "17.6", "17.3", "17.4"},
	[]string{"PMC", "x", "y", "z"},
	[]string{"33", "10", "20", "30"},
	[]string{"A_1", "A_2", "A_3", "A_4", "A_5", "A_6"},
	[]string{"21", "22", "23", "24", "25", "26"},
	[]string{"B_1", "B_2", "B_3", "B_4", "B_5", "B_6"},
	[]string{"41", "42", "43", "44", "45", "46"},
	[]string{"SCLK_A", "SCLK_B", "PMC", "real_time_A", "real_time_B", "live_time_A", "live_time_B", "XPERCHAN_A", "XPERCHAN_B", "OFFSET_A", "OFFSET_B"},
	[]string{"21", "12", "33", "17.7", "17.8", "17.1", "17.2", "17.5", "17.6", "17.3", "17.4"},
	[]string{"13", "14", "34", "18.7", "18.8", "18.1", "18.2", "18.5", "18.6", "18.3", "18.4"},
	[]string{"PMC", "x", "y", "z"},
	[]string{"23", "10", "20", "30"},
	[]string{"34", "11", "21", "31"},
	[]string{"A_1", "A_2", "A_3", "A_4", "A_5", "A_6"},
	[]string{"31", "22", "23", "24", "25", "26"},
	[]string{"121", "122", "123", "124", "125", "126"},
	[]string{"B_1", "B_2", "B_3", "B_4", "B_5", "B_6"},
	[]string{"31", "42", "43", "44", "45", "46"},
	[]string{"141", "142", "143", "144", "145", "146"},
}

data1, data2 := splitSpectraCSVTables(lines)
fmt.Printf("table1=%v, table2=%v\n", len(data1), len(data2))
fmt.Printf("%v\n", data1[0])
fmt.Printf("%v\n", data2[0])
fmt.Printf("%v\n", data2[1])
Output:

table1=8, table2=12
[SCLK_A SCLK_B PMC real_time_A real_time_B live_time_A live_time_B XPERCHAN_A XPERCHAN_B OFFSET_A OFFSET_B]
[SCLK_A SCLK_B PMC real_time_A real_time_B live_time_A live_time_B XPERCHAN_A XPERCHAN_B OFFSET_A OFFSET_B]
[21 12 33 17.7 17.8 17.1 17.2 17.5 17.6 17.3 17.4]
Example (StringFileName)
name := "PS__D077T0637741109_000RPM_N001003600098356100640__J01.CSV"
m, e := ParseFileName(name)
fmt.Printf("%v|%v\n", e, m.ToString())
Output:

<nil>|PS__D077T0637741109_000RPM_N001003600098356100640__J01
Example (StringToDriveID)
strs := []string{
	"0000",
	"1234",
	"9999",
	"A000",
	"B001",
	"Z000",
	"AZ99",
	"BB99",
	"LJ00",
	"LJ35",
	"LJ36", // Out of range, max is 65535
	"300",
	"A00",
	"ZAZA",
}
for _, s := range strs {
	i, e := stringToDriveID(s)
	fmt.Printf("%v|%v\n", i, e)
}
Output:

0|<nil>
1234|<nil>
9999|<nil>
10000|<nil>
11001|<nil>
35000|<nil>
38599|<nil>
38799|<nil>
65500|<nil>
65535|<nil>
0|Failed to convert: LJ36 to drive ID
0|Failed to convert: 300 to drive ID
0|Failed to convert: A00 to drive ID
0|Failed to convert: ZAZA to drive ID
Example (StringToIDSimpleCase)
i, b := stringToIDSimpleCase("123")
fmt.Printf("%v|%v\n", i, b)
i, b = stringToIDSimpleCase("12.3")
fmt.Printf("%v|%v\n", i, b)
i, b = stringToIDSimpleCase("0x32")
fmt.Printf("%v|%v\n", i, b)
i, b = stringToIDSimpleCase("i12")
fmt.Printf("%v|%v\n", i, b)
i, b = stringToIDSimpleCase("12i")
fmt.Printf("%v|%v\n", i, b)
Output:

123|true
0|false
0|false
0|false
0|false
Example (StringToSiteID)
strs := []string{
	"123",
	"B01",
	"AA9",
	"AB8",
	"ZZ9",
	"AAZ",
	"ZZZ",
	"0AA",
	"0BZ",
	"7CZ",
	"7DV",
	"7DW", // Out of range, max is 32767
	"6",
	"HELLO",
}
for _, s := range strs {
	i, e := stringToSiteID(s)
	fmt.Printf("%v|%v\n", i, e)
}
Output:

123|<nil>
1101|<nil>
3609|<nil>
3618|<nil>
10359|<nil>
10385|<nil>
27935|<nil>
27936|<nil>
27987|<nil>
32745|<nil>
32767|<nil>
0|Failed to convert: 7DW to site ID
0|Failed to convert: 6 to site ID
0|Failed to convert: HELLO to site ID
Example (StringToVersion)
strs := []string{"01", "55", "99", "A0", "AZ", "BA", "BZ", "Z0", "Z9", "ZZ", "Test", "3"}
for _, s := range strs {
	i, e := stringToVersion(s)
	fmt.Printf("%v|%v\n", i, e)
}
Output:

1|<nil>
55|<nil>
99|<nil>
100|<nil>
135|<nil>
146|<nil>
171|<nil>
1000|<nil>
1009|<nil>
1035|<nil>
0|Failed to convert: Test to version
0|Failed to convert: 3 to version

Index

Examples

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type FileNameMeta

type FileNameMeta struct {
	// contains filtered or unexported fields
}

FileNameMeta See docs/PIXL_filename.docx

func ParseFileName

func ParseFileName(fileName string) (FileNameMeta, error)

ParseFileName

func (m FileNameMeta) Timestamp() (int32, error) {
	// Built from multiple bits of the structure...

	i, err := strconv.Atoi(m.camSpecific)
	return int32(i), err
}

func (FileNameMeta) PMC

func (m FileNameMeta) PMC() (int32, error)

func (FileNameMeta) RTT

func (m FileNameMeta) RTT() (int32, error)

func (FileNameMeta) SCLK

func (m FileNameMeta) SCLK() (int32, error)

func (FileNameMeta) SOL

func (m FileNameMeta) SOL() (string, error)

func (*FileNameMeta) SetColourFilter

func (m *FileNameMeta) SetColourFilter(colourFilter string)

func (*FileNameMeta) SetInstrumentType

func (m *FileNameMeta) SetInstrumentType(instrumentType string)

func (*FileNameMeta) SetProdType

func (m *FileNameMeta) SetProdType(prodType string)

func (*FileNameMeta) SetVersionStr

func (m *FileNameMeta) SetVersionStr(versionStr string)

func (FileNameMeta) ToString

func (m FileNameMeta) ToString() string

type PIXLFM

type PIXLFM struct {
}

func (PIXLFM) Import

func (p PIXLFM) Import(importPath string, pseudoIntensityRangesPath string, jobLog logger.ILogger) (*converterModels.OutputData, string, error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL