#include "chrome/browser/screen_ai/public/optical_character_recognizer.h"
#include "base/task/single_thread_task_runner.h"
#include "base/time/time.h"
#include "chrome/browser/screen_ai/screen_ai_service_router.h"
#include "chrome/browser/screen_ai/screen_ai_service_router_factory.h"
#include "content/public/browser/browser_thread.h"
namespace {
class SequenceBoundReceiver { … };
void RunCallback(base::OnceCallback<void(bool)> callback, bool result) { … }
}
namespace screen_ai {
scoped_refptr<screen_ai::OpticalCharacterRecognizer>
OpticalCharacterRecognizer::Create(Profile* profile,
mojom::OcrClientType client_type) { … }
scoped_refptr<screen_ai::OpticalCharacterRecognizer>
OpticalCharacterRecognizer::CreateWithStatusCallback(
Profile* profile,
mojom::OcrClientType client_type,
base::OnceCallback<void(bool)> status_callback) { … }
OpticalCharacterRecognizer::OpticalCharacterRecognizer(
Profile* profile,
mojom::OcrClientType client_type)
: … { … }
void OpticalCharacterRecognizer::Initialize(
base::OnceCallback<void(bool)> status_callback) { … }
void OpticalCharacterRecognizer::OnOCRInitializationCallback(
base::OnceCallback<void(bool)> status_callback,
bool successful) { … }
void OpticalCharacterRecognizer::MaybeConnectToOcrService() { … }
void OpticalCharacterRecognizer::OnProfileWillBeDestroyed(Profile* profile) { … }
OpticalCharacterRecognizer::~OpticalCharacterRecognizer() { … }
void OpticalCharacterRecognizer::PerformOCR(
const ::SkBitmap& image,
base::OnceCallback<void(screen_ai::mojom::VisualAnnotationPtr)> callback) { … }
void OpticalCharacterRecognizer::PerformOCR(
const SkBitmap& image,
base::OnceCallback<void(const ui::AXTreeUpdate&)> callback) { … }
}