content: // Copyright 2012 Google Inc. All Rights Reserved.
  
  namespace com.google.typography.font.sfntly.sample.sfview;
  
  
  
  /**
   * @author dougfelt@google.com (Doug Felt)
   */
  interface TaggedData {
    /**
     * @param string
     *          label
     * @param start
     *          start of range to tag
     * @param length
     *          length of range to tag
     * @param depth
     *          nesting depth of range
     */
    void tagRange(String string, int start, int length, int depth);
  
    /**
     * @param position
     *          the position of the field
     * @param width
     *          number of bytes for the field at position
     * @param value
     *          the value in those bytes
     * @param alt
     *          an alternate presentation of the value (in decimal, a tag)
     * @param label
     *          the label of this field
     */
    void tagField(int position, int width, int value, String alt, String label);
  
    /**
     * @param position
     *          the position of the reference to target
     * @param value
     *          the raw value of the field
     * @param targetPosition
     *          the target position;
     * @param label
     *          name for this reference, or null
     */
    void tagTarget(int position, int value, int targetPosition, String label);
  
    void pushRange(String string, ReadableFontData data);
  
    void pushRangeAtOffset(String label, int base);
  
    int tagRangeField(FieldType ft, String label);
  
    void setRangePosition(int rangePosition);
  
    void popRange();
  
    static enum FieldType {
      TAG, SHORT, SHORT_IGNORED, SHORT_IGNORED_FFFF, OFFSET, OFFSET_NONZERO, OFFSET32, GLYPH;
    }
  }
  