@@ -118,7 +118,7 @@ static keywtab_t k_properties[] = { | |||
{ "isFlag1", 0, CONDITION_IS_PHFLAG_SET | phFLAGBIT_FLAG1 }, | |||
{ "isFlag2", 0, CONDITION_IS_PHFLAG_SET | phFLAGBIT_FLAG2 }, | |||
{ "isVel", 0, i_isVel }, | |||
{ "isVel", 0, CONDITION_IS_PLACE_OF_ARTICULATION | phPLACE_VELAR }, | |||
{ "isDiminished", 0, i_isDiminished }, | |||
{ "isUnstressed", 0, i_isUnstressed }, |
@@ -631,13 +631,10 @@ static bool InterpretCondition(Translator *tr, int control, PHONEME_LIST *plist, | |||
switch (instn & 0xe0) | |||
{ | |||
case CONDITION_IS_PHONEME_TYPE: | |||
// phoneme type, vowel, nasal, fricative, etc | |||
return ph->type == data; | |||
case 0x20: | |||
// place of articulation | |||
case CONDITION_IS_PLACE_OF_ARTICULATION: | |||
return ((ph->phflags >> 16) & 0xf) == data; | |||
case CONDITION_IS_PHFLAG_SET: | |||
// is a bit set in phoneme flags | |||
return (ph->phflags & (1 << data)) != 0; | |||
case 0x80: | |||
switch (data) |
@@ -1,7 +1,7 @@ | |||
/* | |||
* Copyright (C) 2005 to 2014 by Jonathan Duddington | |||
* email: [email protected] | |||
* Copyright (C) 2015-2016 Reece H. Dunn | |||
* Copyright (C) 2015-2017 Reece H. Dunn | |||
* | |||
* This program is free software; you can redistribute it and/or modify | |||
* it under the terms of the GNU General Public License as published by | |||
@@ -329,10 +329,8 @@ typedef struct { | |||
#define i_isSecondVowel 0x8e | |||
#define i_IsTranslationGiven 0x90 | |||
// place of articulation | |||
#define i_isVel 0x28 | |||
#define CONDITION_IS_PHONEME_TYPE 0x00 | |||
#define CONDITION_IS_PLACE_OF_ARTICULATION 0x20 | |||
#define CONDITION_IS_PHFLAG_SET 0x40 | |||
#define i_StressLevel 0x800 |