#if (OBI_ONI_SUPPORTED) using System; using System.Collections; using System.Runtime.InteropServices; namespace Obi { public class OniChainConstraintsImpl : OniConstraintsImpl { public OniChainConstraintsImpl(OniSolverImpl solver) : base(solver, Oni.ConstraintType.Chain) { } public override IConstraintsBatchImpl CreateConstraintsBatch() { var batch = new OniChainConstraintsBatchImpl(this); Oni.AddBatch(((OniSolverImpl)solver).oniSolver, ((OniConstraintsBatchImpl)batch).oniBatch); return batch; } public override void RemoveBatch(IConstraintsBatchImpl batch) { Oni.RemoveBatch(((OniSolverImpl)solver).oniSolver, ((OniConstraintsBatchImpl)batch).oniBatch); } } } #endif