Fix ContentViewModel deallocation
This commit is contained in:
parent
fac2e06967
commit
24d09d3883
@ -8,15 +8,17 @@ class ContentViewModel: ObservableObject {
|
|||||||
@Published var frame: CGImage?
|
@Published var frame: CGImage?
|
||||||
@Published var image: UIImage?
|
@Published var image: UIImage?
|
||||||
|
|
||||||
private let context = CIContext()
|
private var cameraManager: CameraManager {
|
||||||
|
.shared
|
||||||
private let cameraManager = CameraManager.shared
|
}
|
||||||
private let frameManager = FrameManager.shared
|
private var frameManager: FrameManager {
|
||||||
|
.shared
|
||||||
|
}
|
||||||
|
|
||||||
init() {
|
init() {
|
||||||
setupSubscriptions()
|
setupSubscriptions()
|
||||||
}
|
}
|
||||||
|
|
||||||
func setupSubscriptions() {
|
func setupSubscriptions() {
|
||||||
frameManager.image = nil
|
frameManager.image = nil
|
||||||
frameManager.current = nil
|
frameManager.current = nil
|
||||||
@ -34,7 +36,7 @@ class ContentViewModel: ObservableObject {
|
|||||||
}
|
}
|
||||||
|
|
||||||
let ciImage = CIImage(cgImage: image)
|
let ciImage = CIImage(cgImage: image)
|
||||||
return self.context.createCGImage(ciImage, from: ciImage.extent)
|
return FrameManager.shared.context.createCGImage(ciImage, from: ciImage.extent)
|
||||||
}
|
}
|
||||||
.assign(to: &$frame)
|
.assign(to: &$frame)
|
||||||
|
|
||||||
|
@ -5,6 +5,8 @@ import UIKit
|
|||||||
class FrameManager: NSObject, ObservableObject {
|
class FrameManager: NSObject, ObservableObject {
|
||||||
|
|
||||||
static let shared = FrameManager()
|
static let shared = FrameManager()
|
||||||
|
|
||||||
|
let context = CIContext()
|
||||||
|
|
||||||
@Published var current: CVPixelBuffer?
|
@Published var current: CVPixelBuffer?
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user