1#
2# Copyright (C) 2018 The Android Open Source Project
3#
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7#
8#      http://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15#
16
17model = Model()
18i1 = Input("input", "TENSOR_FLOAT32", "{2, 3}")
19begins = Parameter("begins", "TENSOR_INT32", "{2}", [1, 0])
20ends = Parameter("ends", "TENSOR_INT32", "{2}", [2, 2])
21strides = Parameter("strides", "TENSOR_INT32", "{2}", [1, 1])
22beginMask = Int32Scalar("beginMask", 1)
23endMask = Int32Scalar("endMask", 0)
24shrinkAxisMask = Int32Scalar("shrinkAxisMask", 0)
25
26output = Output("output", "TENSOR_FLOAT32", "{2, 2}")
27
28model = model.Operation("STRIDED_SLICE", i1, begins, ends, strides, beginMask, endMask, shrinkAxisMask).To(output)
29model = model.RelaxedExecution(True)
30
31# Example 1. Input in operand 0,
32input0 = {i1: # input 0
33          [1, 2, 3, 4, 5, 6]}
34
35output0 = {output: # output 0
36           [1, 2, 4, 5]}
37
38# Instantiate an example
39Example((input0, output0))
40