Search Results for

    Show / Hide Table of Contents

    Class LayoutManager<T>

    A class that supplies simple video frame layout management.

    Inheritance
    System.Object
    Serializable
    Dynamic
    LayoutPreset
    LayoutManager<T>
    LayoutManager
    Inherited Members
    LayoutPreset.Mode
    LayoutPreset.Direction
    LayoutPreset.Alignment
    LayoutPreset.FloatWidthPercent
    LayoutPreset.FloatHeightPercent
    LayoutPreset.FloatMarginXPercent
    LayoutPreset.FloatMarginYPercent
    LayoutPreset.FloatWidth
    LayoutPreset.FloatHeight
    LayoutPreset.FloatMarginX
    LayoutPreset.FloatMarginY
    LayoutPreset.BlockWidthPercent
    LayoutPreset.BlockHeightPercent
    LayoutPreset.BlockMarginXPercent
    LayoutPreset.BlockMarginYPercent
    LayoutPreset.BlockWidth
    LayoutPreset.BlockHeight
    LayoutPreset.BlockMarginX
    LayoutPreset.BlockMarginY
    LayoutPreset.InlineMargin
    LayoutPreset.CopyToPreset(LayoutPreset)
    LayoutPreset.ApplyPreset(LayoutPreset)
    LayoutPreset.Skype
    LayoutPreset.GoogleHangouts
    LayoutPreset.Facetime
    LayoutPreset.CalculateLayout(Int32, Int32, Int32, LayoutOrigin)
    LayoutPreset.CalculateLayout(Int32, Int32, Boolean, Int32, LayoutOrigin, Size, Size[])
    Dynamic.DynamicProperties
    Dynamic.GetDynamicValue(String)
    Dynamic.SetDynamicValue(String, Object)
    Dynamic.UnsetDynamicValue(String)
    Serializable.IsDirty
    Namespace: FM.LiveSwitch
    Assembly: FM.LiveSwitch.dll
    Syntax
    public abstract class LayoutManager<T> : LayoutPreset
    Type Parameters
    Name Description
    T

    Constructors

    LayoutManager()

    Initializes a new instance of the LayoutManager<T> class.

    Declaration
    public LayoutManager()

    LayoutManager(LayoutPreset)

    Initializes a new instance of the LayoutManager<T> class.

    Declaration
    public LayoutManager(LayoutPreset preset)
    Parameters
    Type Name Description
    LayoutPreset preset

    Properties

    LayoutOrigin

    Gets or sets the layout origin. Defaults to TopLeft.

    Declaration
    public virtual LayoutOrigin LayoutOrigin { get; protected set; }
    Property Value
    Type Description
    LayoutOrigin

    Methods

    AddRemoteMedia(IViewableMedia<T>)

    Adds remote media to the layout.

    Declaration
    public bool AddRemoteMedia(IViewableMedia<T> remoteMedia)
    Parameters
    Type Name Description
    IViewableMedia<T> remoteMedia

    The remote media.

    Returns
    Type Description
    System.Boolean

    true if successful; otherwise, false.

    AddRemoteView(String, T)

    Adds a remote view to the layout.

    Declaration
    public bool AddRemoteView(string id, T view)
    Parameters
    Type Name Description
    System.String id

    The remote view ID.

    T view

    The remote view.

    Returns
    Type Description
    System.Boolean

    true if successful; otherwise, false. Check the logs for additional information.

    AddRemoteViews(String[], T[])

    Adds remote views to the layout.

    Declaration
    public bool AddRemoteViews(string[] ids, T[] views)
    Parameters
    Type Name Description
    System.String[] ids

    The remote view IDs.

    T[] views

    The remote views.

    Returns
    Type Description
    System.Boolean

    true if successful; otherwise, false. Check the logs for additional information.

    AddView(T)

    Adds a view to the container.

    Declaration
    protected abstract void AddView(T view)
    Parameters
    Type Name Description
    T view

    The view to add.

    DispatchToMainThread(Action2<Object, Object>, Object, Object)

    Dispatches an action to the main thread.

    Declaration
    protected abstract void DispatchToMainThread(Action2<object, object> action, object arg1, object arg2)
    Parameters
    Type Name Description
    Action2<System.Object, System.Object> action

    The action to invoke.

    System.Object arg1

    The first argument.

    System.Object arg2

    The second argument.

    DoGetLocalView()

    Gets the local view.

    Declaration
    protected virtual T DoGetLocalView()
    Returns
    Type Description
    T

    The local view.

    DoGetRemoteViews(String)

    Gets the remote views for a given remote view ID.

    Declaration
    protected virtual List<T> DoGetRemoteViews(string id)
    Parameters
    Type Name Description
    System.String id

    The remote view ID.

    Returns
    Type Description
    List<T>

    The remote views.

    DoGetRemoteViewsIds()

    Gets the remote view IDs.

    Declaration
    protected virtual string[] DoGetRemoteViewsIds()
    Returns
    Type Description
    System.String[]

    The remote view IDs.

    GetLayout(Int32, Int32, Boolean, Int32)

    Gets a video frame layout.

    Declaration
    protected virtual Layout GetLayout(int layoutWidth, int layoutHeight, bool local, int remoteCount)
    Parameters
    Type Name Description
    System.Int32 layoutWidth

    The total width of the layout.

    System.Int32 layoutHeight

    The total height of the layout.

    System.Boolean local

    Whether a local frame is needed.

    System.Int32 remoteCount

    The number of remote frames.

    Returns
    Type Description
    Layout

    The video frame layout.

    GetLayout(Int32, Int32, Boolean, Int32, String[])

    Gets a video frame layout.

    Declaration
    protected virtual Layout GetLayout(int layoutWidth, int layoutHeight, bool local, int remoteCount, string[] remoteViewIds)
    Parameters
    Type Name Description
    System.Int32 layoutWidth

    The total width of the layout.

    System.Int32 layoutHeight

    The total height of the layout.

    System.Boolean local

    Whether a local frame is needed.

    System.Int32 remoteCount

    The number of remote frames.

    System.String[] remoteViewIds

    The remote view IDs.

    Returns
    Type Description
    Layout

    The video frame layout.

    GetLayout(Int32, Int32, Boolean, Int32, String[], Size, Size[])

    Gets a video frame layout.

    Declaration
    protected virtual Layout GetLayout(int layoutWidth, int layoutHeight, bool local, int remoteCount, string[] remoteViewIds, Size localVideoSize, Size[] remoteVideoSizes)
    Parameters
    Type Name Description
    System.Int32 layoutWidth

    The total width of the layout.

    System.Int32 layoutHeight

    The total height of the layout.

    System.Boolean local

    Whether a local frame is needed.

    System.Int32 remoteCount

    The number of remote frames.

    System.String[] remoteViewIds

    The remote view IDs.

    Size localVideoSize

    The local video size.

    Size[] remoteVideoSizes

    The remote video sizes.

    Returns
    Type Description
    Layout

    The video frame layout.

    GetLayout(Int32, Int32, Int32)

    Gets a video frame layout.

    Declaration
    protected virtual Layout GetLayout(int layoutWidth, int layoutHeight, int remoteCount)
    Parameters
    Type Name Description
    System.Int32 layoutWidth

    The total width of the layout.

    System.Int32 layoutHeight

    The total height of the layout.

    System.Int32 remoteCount

    The number of remote frames.

    Returns
    Type Description
    Layout

    The video frame layout.

    GetLayout(Int32, Int32, Int32, String[])

    Gets a video frame layout.

    Declaration
    protected virtual Layout GetLayout(int layoutWidth, int layoutHeight, int remoteCount, string[] remoteViewIds)
    Parameters
    Type Name Description
    System.Int32 layoutWidth

    The total width of the layout.

    System.Int32 layoutHeight

    The total height of the layout.

    System.Int32 remoteCount

    The number of remote frames.

    System.String[] remoteViewIds

    The remote view IDs.

    Returns
    Type Description
    Layout

    The video frame layout.

    GetLocalView()

    Gets the local view from the layout.

    Declaration
    public T GetLocalView()
    Returns
    Type Description
    T

    The local view.

    GetRemoteView(String)

    Gets a remote view from the layout.

    Declaration
    public T GetRemoteView(string id)
    Parameters
    Type Name Description
    System.String id

    The remote view ID.

    Returns
    Type Description
    T

    The remote view.

    GetRemoteViewIds()

    Gets the IDs of the remote views in the layout.

    Declaration
    public string[] GetRemoteViewIds()
    Returns
    Type Description
    System.String[]

    The remote view IDs.

    GetRemoteViews()

    Gets all remote views from the layout.

    Declaration
    public List<T> GetRemoteViews()
    Returns
    Type Description
    List<T>

    The remote views.

    GetRemoteViews(String[])

    Gets remote views from the layout.

    Declaration
    public List<T> GetRemoteViews(string[] ids)
    Parameters
    Type Name Description
    System.String[] ids

    The remote view IDs.

    Returns
    Type Description
    List<T>

    The remote views.

    Layout()

    Positions the local and remote views within the layout.

    Declaration
    public abstract void Layout()

    LayoutOnMainThread()

    Positions the local and remote views within the layout after dispatching to the main thread.

    Declaration
    public void LayoutOnMainThread()

    RemoveRemoteMedia(IViewableMedia<T>)

    Removes remote media from the layout.

    Declaration
    public bool RemoveRemoteMedia(IViewableMedia<T> remoteMedia)
    Parameters
    Type Name Description
    IViewableMedia<T> remoteMedia

    The remote media.

    Returns
    Type Description
    System.Boolean

    true if successful; otherwise, false.

    RemoveRemoteView(String)

    Removes a remote view from the layout.

    Declaration
    public bool RemoveRemoteView(string id)
    Parameters
    Type Name Description
    System.String id

    The remote view ID.

    Returns
    Type Description
    System.Boolean

    true if successful; otherwise, false. Check the logs for additional information.

    RemoveRemoteViews()

    Removes all remote views from the layout.

    Declaration
    public void RemoveRemoteViews()

    RemoveRemoteViews(String[])

    Removes remote views from the layout.

    Declaration
    public bool RemoveRemoteViews(string[] ids)
    Parameters
    Type Name Description
    System.String[] ids

    The remote view IDs.

    Returns
    Type Description
    System.Boolean

    true if successful; otherwise, false. Check the logs for additional information.

    RemoveView(T)

    Removes a view from the container.

    Declaration
    protected abstract void RemoveView(T view)
    Parameters
    Type Name Description
    T view

    The view to remove.

    Reset()

    Removes all remote views from the layout, then removes the local view from the layout.

    Declaration
    public void Reset()

    SetLocalMedia(IViewableMedia<T>)

    Adds the local media to the layout.

    Declaration
    public bool SetLocalMedia(IViewableMedia<T> localMedia)
    Parameters
    Type Name Description
    IViewableMedia<T> localMedia

    The local media.

    Returns
    Type Description
    System.Boolean

    true if successful; otherwise, false.

    SetLocalView(T)

    Adds the local view to the layout.

    Declaration
    public bool SetLocalView(T view)
    Parameters
    Type Name Description
    T view

    The local view.

    Returns
    Type Description
    System.Boolean

    true if successful; otherwise, false. Check the logs for additional information.

    SwapRemoteMedia(IViewableMedia<T>, IViewableMedia<T>)

    Swaps remote media in the layout.

    Declaration
    public bool SwapRemoteMedia(IViewableMedia<T> remoteMediaToRemove, IViewableMedia<T> remoteMediaToAdd)
    Parameters
    Type Name Description
    IViewableMedia<T> remoteMediaToRemove

    The remote media to remove.

    IViewableMedia<T> remoteMediaToAdd

    The remote media to add.

    Returns
    Type Description
    System.Boolean

    SwapRemoteView(String, String, T)

    Swaps a remote view in the layout.

    Declaration
    public bool SwapRemoteView(string idToRemove, string idToAdd, T viewToAdd)
    Parameters
    Type Name Description
    System.String idToRemove

    The remote view ID to remove.

    System.String idToAdd

    The remote view ID to add.

    T viewToAdd

    The remote view to add.

    Returns
    Type Description
    System.Boolean

    SwapRemoteViews(String[], String[], T[])

    Swaps remote views in the layout.

    Declaration
    public bool SwapRemoteViews(string[] idsToRemove, string[] idsToAdd, T[] viewsToAdd)
    Parameters
    Type Name Description
    System.String[] idsToRemove

    The remote view IDs to remove.

    System.String[] idsToAdd

    The remote view IDs to add.

    T[] viewsToAdd

    The remote views to add.

    Returns
    Type Description
    System.Boolean

    true if successful; otherwise, false. Check the logs for additional information.

    UnsetLocalView()

    Removes the local view from the layout.

    Declaration
    public bool UnsetLocalView()
    Returns
    Type Description
    System.Boolean

    true if successful; otherwise, false. Check the logs for additional information.

    Events

    OnLayout

    Raised when a layout is calculated.

    Declaration
    public event Action1<Layout> OnLayout
    Event Type
    Type Description
    Action1<Layout>
    In This Article
    Back to top Copyright © LiveSwitch Inc. All Rights Reserved. Doc build for LiveSwitch v1.15.0