public void MagicOpen() { if (_magic != IntPtr.Zero) { throw new Exception("Cannot open DeterminesTypeContent instance already opened."); } _magic = magic_open(MagicFlags.MagicDebug); _flags = MagicFlags.MagicNone; }
/// <summary> /// Get file type of buffer. /// </summary> private string CheckBuffer(ReadOnlySpan <byte> span, MagicFlags flags) { lock (_lock) { if (!_magicFileLoaded) { _magic.Load(_magicFile); _magicFileLoaded = true; } _magic.SetFlags(flags); return(_magic.CheckBuffer(span)); } }
/// <summary> /// Get file type of file. /// </summary> private string CheckFile(string filePath, MagicFlags flags) { lock (_lock) { if (!_magicFileLoaded) { _magic.Load(_magicFile); _magicFileLoaded = true; } _magic.SetFlags(flags); return(_magic.CheckFile(filePath)); } }
private int MagicSetflags(MagicFlags flags) { return(magic_setflags(_magic, flags)); }
private extern static int magic_setflags(IntPtr magicCookie, MagicFlags flags);
private extern static IntPtr magic_open(MagicFlags flags);
private void SpellDefine(SpellDefinitions def, string name, int maxMana, int minMana, int manaChange, PositionTypes position, MagicTargetFlags targets, bool violent, MagicFlags routines, string wearOffMessage) { SpellData spell = new SpellData (); spell.Name = name; spell.ManaMaximum = maxMana; spell.ManaMinimum = minMana; spell.ManaChange = manaChange; spell.MinimumPosition = position; spell.Targets = targets; spell.Violent = violent; spell.Routines = routines; spell.WearOffMessage = wearOffMessage; for (int i = 0; i < (int)ClassTypes.Index; i++) spell.MinimumLevel[i] = GlobalConstants.LVL_IMMORT; _spells.Add (def, spell); }
public Magic(MagicFlags flags) { flags = flags | MagicFlags.MAGIC_PRESERVE_ATIME; _magic = magic_open(flags); magic_load(_magic, null); // load default database ThrowIfError(); }
private static extern IntPtr magic_open(MagicFlags flags);