This repository has been archived by the owner on Jun 4, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 64
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
53 changed files
with
3,212 additions
and
1,660 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,10 +1,14 @@ | ||
@echo off | ||
|
||
set PROJDIR=%~dp0 | ||
|
||
for /f "usebackq tokens=*" %%i in (`"C:\Program Files (x86)\Microsoft Visual Studio\Installer\vswhere" -latest -products * -requires Microsoft.Component.MSBuild -property installationPath`) do ( | ||
set InstallDir=%%i | ||
) | ||
|
||
if exist "%InstallDir%\MSBuild\15.0\Bin\MSBuild.exe" ( | ||
call "%InstallDir%\Common7\Tools\VsDevCmd.bat" | ||
pushd %PROJDIR% | ||
"%InstallDir%\MSBuild\15.0\Bin\MSBuild.exe" /m:%NUMBER_OF_PROCESSORS% /nr:false /nologo /verbosity:minimal %* | ||
) | ||
popd | ||
) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
#ifndef CARYLL_INCLUDE_TABLE_VDMX_H | ||
#define CARYLL_INCLUDE_TABLE_VDMX_H | ||
|
||
#include "table-common.h" | ||
|
||
typedef struct { | ||
uint16_t yPelHeight; | ||
int16_t yMax; | ||
int16_t yMin; | ||
} vdmx_Record; | ||
|
||
extern caryll_ValElementInterface(vdmx_Record) vdmx_iRecord; | ||
typedef caryll_Vector(vdmx_Record) vdmx_Group; | ||
extern caryll_VectorInterface(vdmx_Group, vdmx_Record) vdmx_iGroup; | ||
|
||
typedef struct { | ||
uint8_t bCharset; | ||
uint8_t xRatio; | ||
uint8_t yStartRatio; | ||
uint8_t yEndRatio; | ||
|
||
vdmx_Group records; | ||
} vdmx_RatioRange; | ||
|
||
extern caryll_ElementInterface(vdmx_RatioRange) vdmx_iRatioRange; | ||
typedef caryll_Vector(vdmx_RatioRange) vdmx_RatioRagneList; | ||
extern caryll_VectorInterface(vdmx_RatioRagneList, vdmx_RatioRange) vdmx_iRatioRangeList; | ||
|
||
typedef struct { | ||
uint16_t version; | ||
vdmx_RatioRagneList ratios; | ||
} table_VDMX; | ||
|
||
extern caryll_RefElementInterface(table_VDMX) table_iVDMX; | ||
|
||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,40 @@ | ||
#ifndef CARYLL_INCLUDE_TABLE_FVAR_H | ||
#define CARYLL_INCLUDE_TABLE_FVAR_H | ||
|
||
#include "table-common.h" | ||
#include "otfcc/vf/vf.h" | ||
|
||
// vf_Axis and vf_Axes are defined in vf/vf.h | ||
// fvar_Instance is defined below | ||
typedef struct { | ||
uint16_t subfamilyNameID; | ||
uint16_t flags; | ||
VV coordinates; | ||
uint16_t postScriptNameID; | ||
} fvar_Instance; | ||
extern caryll_ElementInterface(fvar_Instance) fvar_iInstance; | ||
typedef caryll_Vector(fvar_Instance) fvar_InstanceList; | ||
extern caryll_VectorInterface(fvar_InstanceList, fvar_Instance) fvar_iInstanceList; | ||
|
||
typedef struct { | ||
sds name; | ||
vq_Region *region; | ||
UT_hash_handle hh; | ||
} fvar_Master; | ||
|
||
typedef struct { | ||
uint16_t majorVersion; | ||
uint16_t minorVersion; | ||
vf_Axes axes; | ||
fvar_InstanceList instances; | ||
fvar_Master *masters; | ||
} table_fvar; | ||
|
||
extern caryll_ElementInterfaceOf(table_fvar) { | ||
caryll_RT(table_fvar); | ||
const vq_Region *(*registerRegion)(table_fvar * fvar, MOVE vq_Region * region); | ||
const fvar_Master *(*findMasterByRegion)(const table_fvar *fvar, const vq_Region *region); | ||
} | ||
table_iFvar; | ||
|
||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
#ifndef CARYLL_VF_AXIS_H | ||
#define CARYLL_VF_AXIS_H | ||
|
||
#include "caryll/element.h" | ||
#include "caryll/vector.h" | ||
#include "otfcc/primitives.h" | ||
|
||
typedef struct { | ||
uint32_t tag; | ||
pos_t minValue; | ||
pos_t defaultValue; | ||
pos_t maxValue; | ||
uint16_t flags; | ||
uint16_t axisNameID; | ||
} vf_Axis; | ||
|
||
extern caryll_ValElementInterface(vf_Axis) vf_iAxis; | ||
typedef caryll_Vector(vf_Axis) vf_Axes; | ||
extern caryll_VectorInterface(vf_Axes, vf_Axis) vf_iAxes; | ||
|
||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
#ifndef CARYLL_VF_REGION_H | ||
#define CARYLL_VF_REGION_H | ||
|
||
#include "caryll/element.h" | ||
#include "caryll/vector.h" | ||
#include "otfcc/primitives.h" | ||
|
||
#include "vv.h" | ||
|
||
typedef struct { | ||
pos_t start; | ||
pos_t peak; | ||
pos_t end; | ||
} vq_AxisSpan; | ||
|
||
bool vq_AxisSpanIsOne(const vq_AxisSpan *a); | ||
|
||
typedef struct { | ||
shapeid_t dimensions; | ||
vq_AxisSpan spans[]; | ||
} vq_Region; | ||
|
||
vq_Region *vq_createRegion(shapeid_t dimensions); | ||
void vq_deleteRegion(MOVE vq_Region *region); | ||
vq_Region *vq_copyRegion(const vq_Region *region); | ||
|
||
int vq_compareRegion(const vq_Region *a, const vq_Region *b); | ||
pos_t vq_regionGetWeight(const vq_Region *r, const VV *v); | ||
void vq_showRegion(const vq_Region *r); | ||
|
||
// function macros | ||
#define VQ_REGION_SIZE(n) (sizeof(vq_Region) + sizeof(vq_AxisSpan) * (n)) | ||
|
||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -9,5 +9,6 @@ | |
// part as a Ket. | ||
|
||
#include "otfcc/vf/vq.h" | ||
#include "otfcc/vf/axis.h" | ||
|
||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
#ifndef CARYLL_VF_VV_H | ||
#define CARYLL_VF_VV_H | ||
|
||
#include "caryll/element.h" | ||
#include "caryll/vector.h" | ||
#include "otfcc/primitives.h" | ||
|
||
extern caryll_ValElementInterface(pos_t) vq_iPosT; | ||
typedef caryll_Vector(pos_t) VV; | ||
extern caryll_VectorInterfaceTypeName(VV) { | ||
caryll_VectorInterfaceTrait(VV, pos_t); | ||
// Monoid instances | ||
VV (*neutral)(tableid_t dimensions); | ||
} | ||
iVV; | ||
// extern caryll_VectorInterface(VV, pos_t) iVV; | ||
|
||
#endif |
Oops, something went wrong.