xref: /aosp_15_r20/external/harfbuzz_ng/src/OT/glyf/loca.hh (revision 2d1272b857b1f7575e6e246373e1cb218663db8a)
1 #ifndef OT_GLYF_LOCA_HH
2 #define OT_GLYF_LOCA_HH
3 
4 
5 #include "../../hb-open-type.hh"
6 
7 
8 namespace OT {
9 
10 
11 /*
12  * loca -- Index to Location
13  * https://docs.microsoft.com/en-us/typography/opentype/spec/loca
14  */
15 #define HB_OT_TAG_loca HB_TAG('l','o','c','a')
16 
17 struct loca
18 {
19   friend struct glyf;
20   friend struct glyf_accelerator_t;
21 
22   static constexpr hb_tag_t tableTag = HB_OT_TAG_loca;
23 
sanitizeOT::loca24   bool sanitize (hb_sanitize_context_t *c HB_UNUSED) const
25   {
26     TRACE_SANITIZE (this);
27     return_trace (true);
28   }
29 
30   protected:
31   UnsizedArrayOf<HBUINT8>
32 		dataZ;	/* Location data. */
33   public:
34   DEFINE_SIZE_MIN (0);	/* In reality, this is UNBOUNDED() type; but since we always
35 			 * check the size externally, allow Null() object of it by
36 			 * defining it _MIN instead. */
37 };
38 
39 
40 } /* namespace OT */
41 
42 
43 #endif /* OT_GLYF_LOCA_HH */
44