// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: tensorflow/core/protobuf/config.proto

package org.tensorflow.framework;

public interface CallableOptionsOrBuilder extends
    // @@protoc_insertion_point(interface_extends:tensorflow.CallableOptions)
    com.google.protobuf.MessageOrBuilder {

  /**
   * <pre>
   * Tensors to be fed in the callable. Each feed is the name of a tensor.
   * </pre>
   *
   * <code>repeated string feed = 1;</code>
   */
  java.util.List<java.lang.String>
      getFeedList();
  /**
   * <pre>
   * Tensors to be fed in the callable. Each feed is the name of a tensor.
   * </pre>
   *
   * <code>repeated string feed = 1;</code>
   */
  int getFeedCount();
  /**
   * <pre>
   * Tensors to be fed in the callable. Each feed is the name of a tensor.
   * </pre>
   *
   * <code>repeated string feed = 1;</code>
   */
  java.lang.String getFeed(int index);
  /**
   * <pre>
   * Tensors to be fed in the callable. Each feed is the name of a tensor.
   * </pre>
   *
   * <code>repeated string feed = 1;</code>
   */
  com.google.protobuf.ByteString
      getFeedBytes(int index);

  /**
   * <pre>
   * Fetches. A list of tensor names. The caller of the callable expects a
   * tensor to be returned for each fetch[i] (see RunStepResponse.tensor). The
   * order of specified fetches does not change the execution order.
   * </pre>
   *
   * <code>repeated string fetch = 2;</code>
   */
  java.util.List<java.lang.String>
      getFetchList();
  /**
   * <pre>
   * Fetches. A list of tensor names. The caller of the callable expects a
   * tensor to be returned for each fetch[i] (see RunStepResponse.tensor). The
   * order of specified fetches does not change the execution order.
   * </pre>
   *
   * <code>repeated string fetch = 2;</code>
   */
  int getFetchCount();
  /**
   * <pre>
   * Fetches. A list of tensor names. The caller of the callable expects a
   * tensor to be returned for each fetch[i] (see RunStepResponse.tensor). The
   * order of specified fetches does not change the execution order.
   * </pre>
   *
   * <code>repeated string fetch = 2;</code>
   */
  java.lang.String getFetch(int index);
  /**
   * <pre>
   * Fetches. A list of tensor names. The caller of the callable expects a
   * tensor to be returned for each fetch[i] (see RunStepResponse.tensor). The
   * order of specified fetches does not change the execution order.
   * </pre>
   *
   * <code>repeated string fetch = 2;</code>
   */
  com.google.protobuf.ByteString
      getFetchBytes(int index);

  /**
   * <pre>
   * Target Nodes. A list of node names. The named nodes will be run by the
   * callable but their outputs will not be returned.
   * </pre>
   *
   * <code>repeated string target = 3;</code>
   */
  java.util.List<java.lang.String>
      getTargetList();
  /**
   * <pre>
   * Target Nodes. A list of node names. The named nodes will be run by the
   * callable but their outputs will not be returned.
   * </pre>
   *
   * <code>repeated string target = 3;</code>
   */
  int getTargetCount();
  /**
   * <pre>
   * Target Nodes. A list of node names. The named nodes will be run by the
   * callable but their outputs will not be returned.
   * </pre>
   *
   * <code>repeated string target = 3;</code>
   */
  java.lang.String getTarget(int index);
  /**
   * <pre>
   * Target Nodes. A list of node names. The named nodes will be run by the
   * callable but their outputs will not be returned.
   * </pre>
   *
   * <code>repeated string target = 3;</code>
   */
  com.google.protobuf.ByteString
      getTargetBytes(int index);

  /**
   * <pre>
   * Options that will be applied to each run.
   * </pre>
   *
   * <code>.tensorflow.RunOptions run_options = 4;</code>
   */
  boolean hasRunOptions();
  /**
   * <pre>
   * Options that will be applied to each run.
   * </pre>
   *
   * <code>.tensorflow.RunOptions run_options = 4;</code>
   */
  org.tensorflow.framework.RunOptions getRunOptions();
  /**
   * <pre>
   * Options that will be applied to each run.
   * </pre>
   *
   * <code>.tensorflow.RunOptions run_options = 4;</code>
   */
  org.tensorflow.framework.RunOptionsOrBuilder getRunOptionsOrBuilder();

  /**
   * <pre>
   * Tensors to be connected in the callable. Each TensorConnection denotes
   * a pair of tensors in the graph, between which an edge will be created
   * in the callable.
   * </pre>
   *
   * <code>repeated .tensorflow.TensorConnection tensor_connection = 5;</code>
   */
  java.util.List<org.tensorflow.framework.TensorConnection> 
      getTensorConnectionList();
  /**
   * <pre>
   * Tensors to be connected in the callable. Each TensorConnection denotes
   * a pair of tensors in the graph, between which an edge will be created
   * in the callable.
   * </pre>
   *
   * <code>repeated .tensorflow.TensorConnection tensor_connection = 5;</code>
   */
  org.tensorflow.framework.TensorConnection getTensorConnection(int index);
  /**
   * <pre>
   * Tensors to be connected in the callable. Each TensorConnection denotes
   * a pair of tensors in the graph, between which an edge will be created
   * in the callable.
   * </pre>
   *
   * <code>repeated .tensorflow.TensorConnection tensor_connection = 5;</code>
   */
  int getTensorConnectionCount();
  /**
   * <pre>
   * Tensors to be connected in the callable. Each TensorConnection denotes
   * a pair of tensors in the graph, between which an edge will be created
   * in the callable.
   * </pre>
   *
   * <code>repeated .tensorflow.TensorConnection tensor_connection = 5;</code>
   */
  java.util.List<? extends org.tensorflow.framework.TensorConnectionOrBuilder> 
      getTensorConnectionOrBuilderList();
  /**
   * <pre>
   * Tensors to be connected in the callable. Each TensorConnection denotes
   * a pair of tensors in the graph, between which an edge will be created
   * in the callable.
   * </pre>
   *
   * <code>repeated .tensorflow.TensorConnection tensor_connection = 5;</code>
   */
  org.tensorflow.framework.TensorConnectionOrBuilder getTensorConnectionOrBuilder(
      int index);
}
