Added comments

dev_raz_wip
Laurent 7 years ago
parent fa5a5bad53
commit cc01dc960c
  1. 20
      app/src/main/java/net/pokeranalytics/android/calculus/Calculator.kt
  2. 9
      app/src/main/java/net/pokeranalytics/android/calculus/Stat.kt
  3. 6
      app/src/main/java/net/pokeranalytics/android/model/realm/Session.kt

@ -8,8 +8,14 @@ import net.pokeranalytics.android.model.realm.SessionSet
*/
class Calculator {
/**
* The options used for calculations or display
*/
class Options {
/**
* The way the stats are going to be displayed
*/
enum class Display {
TABLE,
EVOLUTION,
@ -18,6 +24,9 @@ class Calculator {
POLYNOMIAL
}
/**
* The type of evolution values
*/
enum class EvolutionValues {
NONE,
STANDARD,
@ -28,6 +37,9 @@ class Calculator {
var evolutionValues: EvolutionValues = EvolutionValues.NONE
var displayedStats: List<Stat> = listOf()
/**
* This function determines whether the standard deviation should be computed
*/
fun shouldComputeStandardDeviation() : Boolean {
this.displayedStats.forEach { stat ->
return when (stat) {
@ -47,7 +59,9 @@ class Calculator {
return listOf()
}
// Computes all stats for list of Session sessionGroup
/**
* Computes all stats for list of Session sessionGroup
*/
fun computeGroups(groups: List<SessionGroup>, options: Options): List<ComputedGroup> {
var computedGroups: MutableList<ComputedGroup> = mutableListOf()
@ -71,7 +85,9 @@ class Calculator {
return computedGroups
}
// Computes stats for a SessionSet
/**
* Computes stats for a SessionSet
*/
fun compute(sessionGroup: SessionGroup, options: Options) : ComputedResults {
val sessions: List<SessionInterface> = sessionGroup.sessions

@ -27,12 +27,9 @@ enum class Stat : RowRepresentable {
STANDARD_DEVIATION_BB_PER_100_HANDS,
HANDS_PLAYED;
fun label() : String = when (this) {
NETRESULT -> ""
HOURLY_RATE -> ""
else -> throw IllegalArgumentException("Label not defined")
}
/**
* Returns whether the stat evolution values requires a distribution sorting
*/
fun hasDistributionSorting() : Boolean {
when (this) {
STANDARD_DEVIATION, STANDARD_DEVIATION_HOURLY, STANDARD_DEVIATION_BB_PER_100_HANDS -> return true

@ -133,16 +133,22 @@ open class Session : RealmObject(), SessionInterface, RowRepresentableDataSource
return 0.0
}
/**
* This method is called whenever a session is about to be deleted
*/
fun cleanup() {
this.sessionSet?.let { set ->
// get all sessions part of the deleted session set
val sessionsFromSet = set.sessions
// cleanup unecessary related objects
set.deleteFromRealm()
this.timeFrame?.deleteFromRealm()
this.result?.deleteFromRealm()
// make sessions recreate/find their session set
sessionsFromSet?.let { sessions ->
sessions.forEach { session ->
session.timeFrame?.notifySessionDateChange()

Loading…
Cancel
Save