public MMAL_WRAPPER_T( IntPtr userData, IntPtr callback, MMAL_COMPONENT_T *component, MMALUtil.MMAL_STATUS_T status, MMAL_PORT_T *control, uint inputNum, MMAL_PORT_T **input, MMAL_POOL_T **inputPool, uint outputNum, MMAL_PORT_T **output, MMAL_POOL_T **outputPool, MMAL_QUEUE_T **outputQueue, long timeSetup, long timeEnable, long timeDisable) { this.userData = userData; this.callback = callback; this.component = component; this.status = status; this.control = control; this.inputNum = inputNum; this.input = input; this.inputPool = inputPool; this.outputNum = outputNum; this.output = output; this.outputPool = outputPool; this.outputQueue = outputQueue; this.timeSetup = timeSetup; this.timeEnable = timeEnable; this.timeDisable = timeDisable; }
/// <summary> /// Creates the MMAL Component by the given name. /// </summary> /// <param name="name">The native MMAL name of the component you want to create.</param> protected MMALComponentBase(string name) { this.Ptr = CreateComponent(name); this.Inputs = new List <InputPortBase>(); this.Outputs = new List <OutputPortBase>(); this.Clocks = new List <PortBase>(); this.Ports = new List <PortBase>(); this.Control = new ControlPort((IntPtr)this.Ptr->Control, this, PortType.Control, Guid.NewGuid()); for (int i = 0; i < this.Ptr->ClockNum; i++) { this.Clocks.Add(new ClockPort((IntPtr)(&(*this.Ptr->Clock[i])), this, PortType.Clock, Guid.NewGuid())); } for (int i = 0; i < this.Ptr->PortNum; i++) { this.Ports.Add(new GenericPort((IntPtr)(&(*this.Ptr->Port[i])), this, PortType.Generic, Guid.NewGuid())); } }
public MMAL_PORT_T(IntPtr priv, char *name, MMALPort.MMAL_PORT_TYPE_T type, ushort index, ushort indexAll, int isEnabled, MMAL_ES_FORMAT_T *format, int bufferNumMin, int bufferSizeMin, int bufferAlignmentMin, int bufferNumRecommended, int bufferSizeRecommended, int bufferNum, int bufferSize, MMAL_COMPONENT_T *component, IntPtr userData, uint capabilities) { this.priv = priv; this.name = name; this.type = type; this.index = index; this.indexAll = indexAll; this.isEnabled = isEnabled; this.format = format; this.bufferNumMin = bufferNumMin; this.bufferSizeMin = bufferSizeMin; this.bufferAlignmentMin = bufferAlignmentMin; this.bufferNumRecommended = bufferNumRecommended; this.bufferSizeRecommended = bufferSizeRecommended; this.bufferNum = bufferNum; this.bufferSize = bufferSize; this.component = component; this.userData = userData; this.capabilities = capabilities; }
public static extern unsafe MMAL_PORT_T mmal_util_get_port(MMAL_COMPONENT_T *comp, MMALPort.MMAL_PORT_TYPE_T pType, uint index);
public static unsafe extern MMALUtil.MMAL_STATUS_T mmal_component_disable(MMAL_COMPONENT_T *comp);
public static unsafe extern void mmal_component_acquire(MMAL_COMPONENT_T *comp);
public static extern unsafe MMALUtil.MMAL_STATUS_T mmal_component_enable(MMAL_COMPONENT_T *comp);