MCPcopy Create free account
hub / github.com/OpenEndedGroup/Field2 / Analysis

Class Analysis

src/main/java/trace/video/Analysis.kt:12–45  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

10object Analysis {
11
12 interface Fast {
13 fun perform(data: List<File>): List<List<Float>>
14 }
15
16
17 @JvmStatic
18 val registry = mutableMapOf<String, Fast>()
19
20 init {
21 registry.put("brightness", Brightness())
22 registry.put("red", Red())
23 registry.put("green", Green())
24 registry.put("blue", Blue())
25 }
26
27 @JvmStatic
28 fun getAnalysis(name: String, directory: String): SimpleAnalysis {
29 if (File(directory + "/" + name + ".csv").exists()) return SimpleAnalysis(directory + "/" + name + ".csv")
30 if (registry.containsKey(name)) {
31 val res = registry.get(name)!!.perform(File(directory).list(FilenameFilter { d, name -> name.endsWith(".jpg") }).sorted().map { File(directory, it) }.toList())
32 PrintWriter(FileWriter(File(directory + "/" + name + ".csv"))).use { writer ->
33 res.forEach {
34 writer.println(it.joinToString(",", transform = { it.toString() }))
35 }
36 }
37 return SimpleAnalysis(directory + "/" + name + ".csv")
38 } else
39 throw IllegalArgumentException("can't find an analysis called $name")
40 }
41
42
43}

Callers

nothing calls this directly

Calls 5

BrightnessClass · 0.85
RedClass · 0.85
GreenClass · 0.85
BlueClass · 0.85
putMethod · 0.45

Tested by

no test coverage detected