• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 #ifndef OT_GLYF_COORD_SETTER_HH
2 #define OT_GLYF_COORD_SETTER_HH
3 
4 
5 #include "../../hb.hh"
6 
7 
8 namespace OT {
9 namespace glyf_impl {
10 
11 
12 struct coord_setter_t
13 {
coord_setter_tOT::glyf_impl::coord_setter_t14   coord_setter_t (hb_array_t<int> coords) :
15     coords (coords) {}
16 
operator []OT::glyf_impl::coord_setter_t17   int& operator [] (unsigned idx)
18   {
19     if (unlikely (idx >= HB_GLYF_VAR_COMPOSITE_MAX_AXES))
20       return Crap(int);
21     if (coords.length < idx + 1)
22       coords.resize (idx + 1);
23     return coords[idx];
24   }
25 
get_coordsOT::glyf_impl::coord_setter_t26   hb_array_t<int> get_coords ()
27   { return coords.as_array (); }
28 
29   hb_vector_t<int> coords;
30 };
31 
32 
33 } /* namespace glyf_impl */
34 } /* namespace OT */
35 
36 #endif /* OT_GLYF_COORD_SETTER_HH */
37