xref: /aosp_15_r20/external/executorch/extension/llm/runner/image.h (revision 523fa7a60841cd1ecfb9cc4201f1ca8b03ed023a)
1*523fa7a6SAndroid Build Coastguard Worker /*
2*523fa7a6SAndroid Build Coastguard Worker  * Copyright (c) Meta Platforms, Inc. and affiliates.
3*523fa7a6SAndroid Build Coastguard Worker  * All rights reserved.
4*523fa7a6SAndroid Build Coastguard Worker  *
5*523fa7a6SAndroid Build Coastguard Worker  * This source code is licensed under the BSD-style license found in the
6*523fa7a6SAndroid Build Coastguard Worker  * LICENSE file in the root directory of this source tree.
7*523fa7a6SAndroid Build Coastguard Worker  */
8*523fa7a6SAndroid Build Coastguard Worker 
9*523fa7a6SAndroid Build Coastguard Worker // A simple image struct.
10*523fa7a6SAndroid Build Coastguard Worker 
11*523fa7a6SAndroid Build Coastguard Worker #pragma once
12*523fa7a6SAndroid Build Coastguard Worker #include <executorch/runtime/platform/compiler.h>
13*523fa7a6SAndroid Build Coastguard Worker #include <cstdint>
14*523fa7a6SAndroid Build Coastguard Worker #include <vector>
15*523fa7a6SAndroid Build Coastguard Worker 
16*523fa7a6SAndroid Build Coastguard Worker namespace executorch {
17*523fa7a6SAndroid Build Coastguard Worker namespace extension {
18*523fa7a6SAndroid Build Coastguard Worker namespace llm {
19*523fa7a6SAndroid Build Coastguard Worker 
20*523fa7a6SAndroid Build Coastguard Worker struct ET_EXPERIMENTAL Image {
21*523fa7a6SAndroid Build Coastguard Worker   // Assuming NCHW format
22*523fa7a6SAndroid Build Coastguard Worker   std::vector<uint8_t> data;
23*523fa7a6SAndroid Build Coastguard Worker   int32_t width;
24*523fa7a6SAndroid Build Coastguard Worker   int32_t height;
25*523fa7a6SAndroid Build Coastguard Worker   int32_t channels;
26*523fa7a6SAndroid Build Coastguard Worker };
27*523fa7a6SAndroid Build Coastguard Worker 
28*523fa7a6SAndroid Build Coastguard Worker } // namespace llm
29*523fa7a6SAndroid Build Coastguard Worker } // namespace extension
30*523fa7a6SAndroid Build Coastguard Worker } // namespace executorch
31*523fa7a6SAndroid Build Coastguard Worker 
32*523fa7a6SAndroid Build Coastguard Worker namespace torch {
33*523fa7a6SAndroid Build Coastguard Worker namespace executor {
34*523fa7a6SAndroid Build Coastguard Worker // TODO(T197294990): Remove these deprecated aliases once all users have moved
35*523fa7a6SAndroid Build Coastguard Worker // to the new `::executorch` namespaces.
36*523fa7a6SAndroid Build Coastguard Worker using ::executorch::extension::llm::Image;
37*523fa7a6SAndroid Build Coastguard Worker } // namespace executor
38*523fa7a6SAndroid Build Coastguard Worker } // namespace torch
39