parent
73b5fbcc4d
commit
1c2a4d0a09
@ -0,0 +1,42 @@ |
||||
package net.pokeranalytics.android.model.handhistory |
||||
|
||||
import net.pokeranalytics.android.model.realm.handhistory.HandHistory |
||||
|
||||
class Builder { |
||||
|
||||
/*** |
||||
* The hand history |
||||
*/ |
||||
private var handHistory: HandHistory |
||||
set(value) { |
||||
field = value |
||||
load() |
||||
} |
||||
|
||||
val actions: List<ComputedAction> = listOf() |
||||
|
||||
constructor() { |
||||
this.handHistory = HandHistory() |
||||
} |
||||
|
||||
constructor(handHistory: HandHistory) { |
||||
this.handHistory = handHistory |
||||
} |
||||
|
||||
private fun load() { |
||||
|
||||
var potSize = 0.0 |
||||
|
||||
// sorted actions |
||||
this.handHistory.actions.forEach { |
||||
|
||||
val computedAction = ComputedAction(it, potSize, 0.0) |
||||
} |
||||
|
||||
} |
||||
|
||||
private fun save() { |
||||
|
||||
} |
||||
|
||||
} |
||||
@ -0,0 +1,18 @@ |
||||
package net.pokeranalytics.android.model.handhistory |
||||
|
||||
import net.pokeranalytics.android.model.realm.handhistory.Action |
||||
|
||||
class ComputedAction(var action: Action, |
||||
var potSize: Double = 0.0, |
||||
var playerRemainingStack: Double = 0.0) { |
||||
|
||||
/*** |
||||
* The potsize is used: |
||||
* - in the replayer / video |
||||
* - in the list of actions by street |
||||
*/ |
||||
// var potSize = 0.0 |
||||
// |
||||
// var playerRemainingStack = 0.0 |
||||
|
||||
} |
||||
@ -1,16 +0,0 @@ |
||||
package net.pokeranalytics.android.model.realm |
||||
|
||||
import io.realm.RealmObject |
||||
import io.realm.annotations.PrimaryKey |
||||
import java.util.* |
||||
|
||||
|
||||
open class HandHistory : RealmObject() { |
||||
|
||||
@PrimaryKey |
||||
var id = UUID.randomUUID().toString() |
||||
|
||||
// the date of the hand history |
||||
var date: Date = Date() |
||||
|
||||
} |
||||
@ -0,0 +1,32 @@ |
||||
package net.pokeranalytics.android.model.realm.handhistory |
||||
|
||||
import io.realm.RealmObject |
||||
|
||||
open class Action : RealmObject() { |
||||
|
||||
/*** |
||||
* The street of the action |
||||
*/ |
||||
var street: Int = 0 |
||||
|
||||
/*** |
||||
* The index of the action |
||||
*/ |
||||
var index: Int = 0 |
||||
|
||||
/*** |
||||
* The position of the user making the action |
||||
*/ |
||||
var position: Int = 0 |
||||
|
||||
/*** |
||||
* The type of action: check, fold, raise... |
||||
*/ |
||||
var type: Int = 0 |
||||
|
||||
/*** |
||||
* The amount linked for a bet, raise... |
||||
*/ |
||||
var amount: Double? = null |
||||
|
||||
} |
||||
@ -0,0 +1,25 @@ |
||||
package net.pokeranalytics.android.model.realm.handhistory |
||||
|
||||
import io.realm.RealmObject |
||||
|
||||
|
||||
open class Card : RealmObject() { |
||||
|
||||
enum class Suit { |
||||
SPADES, |
||||
HEART, |
||||
DIAMOND, |
||||
CLOVER |
||||
} |
||||
|
||||
/*** |
||||
* The card value: 2..A |
||||
*/ |
||||
var value: Int = 0 |
||||
|
||||
/*** |
||||
* The card suit: heart, spades... |
||||
*/ |
||||
var suit: Int = 0 |
||||
|
||||
} |
||||
@ -0,0 +1,76 @@ |
||||
package net.pokeranalytics.android.model.realm.handhistory |
||||
|
||||
import io.realm.RealmList |
||||
import io.realm.RealmObject |
||||
import io.realm.annotations.PrimaryKey |
||||
import net.pokeranalytics.android.model.realm.Session |
||||
import java.util.* |
||||
|
||||
|
||||
open class HandHistory : RealmObject() { |
||||
|
||||
@PrimaryKey |
||||
var id = UUID.randomUUID().toString() |
||||
|
||||
/*** |
||||
* The date of the hand history |
||||
*/ |
||||
var date: Date = Date() |
||||
|
||||
/*** |
||||
* The session whose hand was played |
||||
*/ |
||||
var session: Session? = null |
||||
|
||||
/*** |
||||
* The small blind |
||||
*/ |
||||
var smallBlind: Double = 0.0 |
||||
|
||||
/*** |
||||
* The big blind |
||||
*/ |
||||
var bigBlind: Double = 0.0 |
||||
|
||||
/*** |
||||
* The ante |
||||
*/ |
||||
var ante: Double = 0.0 |
||||
|
||||
/*** |
||||
* Big blind ante |
||||
*/ |
||||
var bigBlindAnte: Boolean = false |
||||
|
||||
/*** |
||||
* Number of players in the hand |
||||
*/ |
||||
var numberOfPlayers: Int = 9 |
||||
|
||||
/*** |
||||
* Number of players in the hand |
||||
*/ |
||||
var comment: String? = null |
||||
|
||||
/*** |
||||
* The position index of the hero |
||||
*/ |
||||
var heroIndex: Int? = null |
||||
|
||||
/*** |
||||
* The board |
||||
*/ |
||||
var board: RealmList<Card> = RealmList() |
||||
|
||||
/*** |
||||
* The players actions |
||||
*/ |
||||
var actions: RealmList<Action> = RealmList() |
||||
|
||||
/*** |
||||
* A list of players initial data: user, position, hand, stack |
||||
*/ |
||||
var playerSetups: RealmList<PlayerSetup> = RealmList() |
||||
|
||||
|
||||
} |
||||
@ -0,0 +1,29 @@ |
||||
package net.pokeranalytics.android.model.realm.handhistory |
||||
|
||||
import io.realm.RealmList |
||||
import io.realm.RealmObject |
||||
import net.pokeranalytics.android.model.realm.Player |
||||
|
||||
open class PlayerSetup : RealmObject() { |
||||
|
||||
/*** |
||||
* The player |
||||
*/ |
||||
var player: Player? = null |
||||
|
||||
/*** |
||||
* The position at the table: SB..BUTTON |
||||
*/ |
||||
var position: Int = 0 |
||||
|
||||
/*** |
||||
* The initial stack of the player |
||||
*/ |
||||
var stack: Double? = null |
||||
|
||||
/*** |
||||
* The cards of the player |
||||
*/ |
||||
var cards: RealmList<Card> = RealmList() |
||||
|
||||
} |
||||
Loading…
Reference in new issue