public static int registerMask(int _ClipInstanceID, uint _ObjectID, IGAFMaskObjectImpl _Mask) { int stencilID = 0; if (stencilMasks.ContainsKey(_ClipInstanceID)) { if (stencilMasks[_ClipInstanceID].ContainsKey(_ObjectID)) { stencilID = stencilMasks[_ClipInstanceID][_ObjectID].getStencilID(); } else { stencilID = availableIDs[0]; availableIDs.RemoveAt(0); stencilMasks[_ClipInstanceID].Add(_ObjectID, _Mask); } } else { stencilMasks.Add(_ClipInstanceID, new Dictionary <uint, IGAFMaskObjectImpl>()); stencilID = availableIDs[0]; availableIDs.RemoveAt(0); stencilMasks[_ClipInstanceID].Add(_ObjectID, _Mask); } return(stencilID); }
public static int registerMask(int _ClipInstanceID, uint _ObjectID, IGAFMaskObjectImpl _Mask) { int stencilID = 0; if (stencilMasks.ContainsKey(_ClipInstanceID)) { if (stencilMasks[_ClipInstanceID].ContainsKey(_ObjectID)) { stencilID = stencilMasks[_ClipInstanceID][_ObjectID].getStencilID(); } else { stencilID = availableIDs[0]; availableIDs.RemoveAt(0); stencilMasks[_ClipInstanceID].Add(_ObjectID, _Mask); } } else { stencilMasks.Add(_ClipInstanceID, new Dictionary<uint, IGAFMaskObjectImpl>()); stencilID = availableIDs[0]; availableIDs.RemoveAt(0); stencilMasks[_ClipInstanceID].Add(_ObjectID, _Mask); } return stencilID; }
public static void unregisterMask(int _ClipInstanceID, uint _ObjectID, IGAFMaskObjectImpl _Mask) { if (stencilMasks.ContainsKey(_ClipInstanceID) && stencilMasks[_ClipInstanceID].ContainsKey(_ObjectID)) { availableIDs.Add(_Mask.getStencilID()); stencilMasks[_ClipInstanceID].Remove(_ObjectID); if (stencilMasks[_ClipInstanceID].Count == 0) stencilMasks.Remove(_ClipInstanceID); } }
public static void unregisterMask(int _ClipInstanceID, uint _ObjectID, IGAFMaskObjectImpl _Mask) { if (stencilMasks.ContainsKey(_ClipInstanceID) && stencilMasks[_ClipInstanceID].ContainsKey(_ObjectID)) { availableIDs.Add(_Mask.getStencilID()); stencilMasks[_ClipInstanceID].Remove(_ObjectID); if (stencilMasks[_ClipInstanceID].Count == 0) { stencilMasks.Remove(_ClipInstanceID); } } }