// Copyright 2018 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

// Datatypes and interfaces of models for the Machine Learning API.

// NOTE: This mojom should be kept in sync with the copy in Chromium's repo in
// //chromeos/services/machine_learning/public/mojom/.
// Example: A backwards-compatible interface change and corresponding
// implementation change can be made here first, then replicated to the client
// (Chromium) later.

module chromeos.machine_learning.mojom;

import "ml/mojom/graph_executor.mojom";

enum ModelId {
  UNKNOWN,
  TEST_MODEL,
};

enum CreateGraphExecutorResult {
  OK = 0,
  MODEL_INTERPRETATION_ERROR,
  MEMORY_ALLOCATION_ERROR,
};

struct ModelSpec {
  ModelId id;
};

// The lifetime of the cached model is tied to the lifetime of the Model
// interface pipe. The Model interface pipe can be used to acquire multiple
// separate GraphExecutor instances.
interface Model {
  CreateGraphExecutor(GraphExecutor& request) =>
      (CreateGraphExecutorResult result);
};
