public void DisableComponent()
 {
     if (Enabled)
     {
         MmalCheck(MmalComponent.Disable(Ptr), "Unable to disable component");
     }
 }
 public void EnableComponent()
 {
     if (!Enabled)
     {
         MmalCheck(MmalComponent.Enable(Ptr), "Unable to enable component");
     }
 }
        static MmalComponentType *CreateComponent(string name)
        {
            var ptr = IntPtr.Zero;

            MmalCheck(MmalComponent.Create(name, &ptr), "Unable to create component");

            var compPtr = (MmalComponentType *)ptr.ToPointer();

            return(compPtr);
        }
 public void DestroyComponent() => MmalCheck(MmalComponent.Destroy(Ptr), "Unable to destroy component");
 public void ReleaseComponent() => MmalCheck(MmalComponent.Release(Ptr), "Unable to release component");
 public void AcquireComponent() => MmalComponent.Acquire(Ptr);