- Forked from Godot Engine 4.7-dev (MIT License) - Rebranded to AeThex Engine with cyan/purple theme - Added AI-powered development assistant module - Integrated Claude API for code completion & error fixing - Custom hexagon logo and branding - Multi-platform CI/CD (Windows, Linux, macOS) - Built Linux editor binary (151MB) - Complete source code with all customizations Tech Stack: - C++ game engine core - AI Module: Claude 3.5 Sonnet integration - Build: SCons, 14K+ source files - License: MIT (Godot) + Custom (AeThex features) Ready for Windows build via GitHub Actions!
45 lines
1.6 KiB
C++
45 lines
1.6 KiB
C++
#include "hb-subset-table.hh"
|
|
|
|
#include "hb-ot-var-hvar-table.hh"
|
|
#include "hb-ot-var-gvar-table.hh"
|
|
#include "hb-ot-var-fvar-table.hh"
|
|
#include "hb-ot-var-avar-table.hh"
|
|
#include "hb-ot-var-cvar-table.hh"
|
|
#include "hb-ot-var-mvar-table.hh"
|
|
|
|
bool _hb_subset_table_var (hb_subset_plan_t *plan, hb_vector_t<char> &buf, hb_tag_t tag, bool *success)
|
|
{
|
|
#ifndef HB_NO_VAR
|
|
switch (tag)
|
|
{
|
|
case HB_TAG('H','V','A','R'): *success = _hb_subset_table<const OT::HVAR> (plan, buf); return true;
|
|
case HB_TAG('V','V','A','R'): *success = _hb_subset_table<const OT::VVAR> (plan, buf); return true;
|
|
case HB_TAG('g','v','a','r'): *success = _hb_subset_table<const OT::gvar> (plan, buf); return true;
|
|
case HB_TAG('f','v','a','r'):
|
|
if (plan->user_axes_location.is_empty ())
|
|
*success = _hb_subset_table_passthrough (plan, tag);
|
|
else
|
|
*success = _hb_subset_table<const OT::fvar> (plan, buf);
|
|
return true;
|
|
case HB_TAG('a','v','a','r'):
|
|
if (plan->user_axes_location.is_empty ())
|
|
*success = _hb_subset_table_passthrough (plan, tag);
|
|
else
|
|
*success = _hb_subset_table<const OT::avar> (plan, buf);
|
|
return true;
|
|
case HB_TAG('c','v','a','r'):
|
|
if (plan->user_axes_location.is_empty ())
|
|
*success = _hb_subset_table_passthrough (plan, tag);
|
|
else
|
|
*success = _hb_subset_table<const OT::cvar> (plan, buf);
|
|
return true;
|
|
case HB_TAG('M','V','A','R'):
|
|
if (plan->user_axes_location.is_empty ())
|
|
*success = _hb_subset_table_passthrough (plan, tag);
|
|
else
|
|
*success = _hb_subset_table<const OT::MVAR> (plan, buf);
|
|
return true;
|
|
}
|
|
#endif
|
|
return false;
|
|
}
|