DI: make viewmodels Hilt injectable
This commit is contained in:
parent
564b095427
commit
a1f6e7e476
|
|
@ -5,6 +5,7 @@ import androidx.lifecycle.ViewModelProvider
|
|||
import androidx.lifecycle.viewModelScope
|
||||
import com.example.llama.revamp.data.model.ModelInfo
|
||||
import com.example.llama.revamp.engine.InferenceEngine
|
||||
import dagger.hilt.android.lifecycle.HiltViewModel
|
||||
import kotlinx.coroutines.Job
|
||||
import kotlinx.coroutines.flow.MutableStateFlow
|
||||
import kotlinx.coroutines.flow.StateFlow
|
||||
|
|
@ -15,12 +16,14 @@ import kotlinx.coroutines.launch
|
|||
import java.text.SimpleDateFormat
|
||||
import java.util.Date
|
||||
import java.util.Locale
|
||||
import javax.inject.Inject
|
||||
|
||||
/**
|
||||
* Main ViewModel that handles the LLM engine state and operations.
|
||||
*/
|
||||
class MainViewModel(
|
||||
private val inferenceEngine: InferenceEngine = InferenceEngine()
|
||||
@HiltViewModel
|
||||
class MainViewModel @Inject constructor (
|
||||
private val inferenceEngine: InferenceEngine
|
||||
) : ViewModel() {
|
||||
|
||||
// Expose the engine state
|
||||
|
|
|
|||
|
|
@ -9,16 +9,19 @@ import com.example.llama.revamp.monitoring.MemoryMetrics
|
|||
import com.example.llama.revamp.monitoring.PerformanceMonitor
|
||||
import com.example.llama.revamp.monitoring.TemperatureMetrics
|
||||
import com.example.llama.revamp.monitoring.TemperatureWarningLevel
|
||||
import dagger.hilt.android.lifecycle.HiltViewModel
|
||||
import kotlinx.coroutines.flow.MutableStateFlow
|
||||
import kotlinx.coroutines.flow.StateFlow
|
||||
import kotlinx.coroutines.flow.asStateFlow
|
||||
import kotlinx.coroutines.flow.first
|
||||
import kotlinx.coroutines.launch
|
||||
import javax.inject.Inject
|
||||
|
||||
/**
|
||||
* ViewModel that manages performance monitoring for the app.
|
||||
*/
|
||||
class PerformanceViewModel(
|
||||
@HiltViewModel
|
||||
class PerformanceViewModel @Inject constructor(
|
||||
private val performanceMonitor: PerformanceMonitor,
|
||||
private val userPreferences: UserPreferences
|
||||
) : ViewModel() {
|
||||
|
|
|
|||
|
|
@ -5,15 +5,18 @@ import androidx.lifecycle.ViewModelProvider
|
|||
import androidx.lifecycle.viewModelScope
|
||||
import com.example.llama.revamp.data.model.SystemPrompt
|
||||
import com.example.llama.revamp.data.repository.SystemPromptRepository
|
||||
import dagger.hilt.android.lifecycle.HiltViewModel
|
||||
import kotlinx.coroutines.flow.SharingStarted
|
||||
import kotlinx.coroutines.flow.StateFlow
|
||||
import kotlinx.coroutines.flow.stateIn
|
||||
import kotlinx.coroutines.launch
|
||||
import javax.inject.Inject
|
||||
|
||||
/**
|
||||
* ViewModel for handling system prompts.
|
||||
*/
|
||||
class SystemPromptViewModel(
|
||||
@HiltViewModel
|
||||
class SystemPromptViewModel @Inject constructor(
|
||||
private val repository: SystemPromptRepository
|
||||
) : ViewModel() {
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue