/****************************************************************************
 *
 * afindic.h
 *
 *   Auto-fitter hinting routines for Indic writing system
 *   (specification).
 *
 * Copyright 2007-2018 by
 * Rahul Bhalerao <rahul.bhalerao@redhat.com>, <b.rahul.pm@gmail.com>.
 *
 * This file is part of the FreeType project, and may only be used,
 * modified, and distributed under the terms of the FreeType project
 * license, LICENSE.TXT.  By continuing to use, modify, or distribute
 * this file you indicate that you have read the license and
 * understand and accept it fully.
 *
 */


#ifndef AFINDIC_H_
#define AFINDIC_H_

#include "afhints.h"


FT_BEGIN_HEADER


  /* the `indic' writing system */

  AF_DECLARE_WRITING_SYSTEM_CLASS( af_indic_writing_system_class )


/* */

FT_END_HEADER

#endif /* AFINDIC_H_ */


/* END */
