public FlagGroupStorage GetFlagGroup(string s)
{
uint grf = 0;
for (int i = 0; i < s.Length; ++i)
{
switch (char.ToUpper(s[i]))
{
case 'S': grf |= 0x01; break;
case 'C': grf |= 0x02; break;
case 'Z': grf |= 0x04; break;
case 'O': grf |= 0x10; break;
case 'V': grf |= 0x10; break;
case 'X': grf |= 0x20; break;
}
}
if (grf != 0)
return new FlagGroupStorage(flags, grf, s, PrimitiveType.Byte);
return null;
}