IWMSPlaylistTransformAdmin Interface

banner art

Previous Next

IWMSPlaylistTransformAdmin Interface

The IWMSPlaylistTransformAdmin interface is exposed by the WMS Playlist Transform plug-in, an event plug-in that manipulates the behavior of playlist files.

In addition to the methods inherited from IDispatch, the IWMSWMIBridgeAdmin interface exposes the following methods.

Method Description
get_InfiniteRepeat Retrieves a Boolean value indicating whether playlist files will automatically loop back to the beginning when they are finished.
get_Shuffle Retrieves a Boolean value indicating whether content in a playlist is played in a random order.
put_InfiniteRepeat Specifies a Boolean value indicating whether playlist files will automatically loop back to the beginning when they are finished.
put_Shuffle Specifies a Boolean value indicating whether content in a playlist is played in a random order.

Example Code

The following example illustrates how to retrieve a pointer to an IWMSPlaylistTransformAdmin interface.

#include <windows.h>
#include <atlbase.h>    // Includes CComVariant.

// To access system plug-in interfaces, the
// entire type library must be imported as shown.
#import "WMSServerTypeLib.dll" no_namespace named_guids \
                               raw_interfaces_only

// Declare variables and interfaces.
IWMSServer                  *pServer;
IWMSPublishingPoints        *pPubPoints;
IWMSPublishingPoint         *pPubPoint;
IWMSPlugins                 *pPlugins;
IWMSPlugin                  *pPlugin;
IDispatch                   *pDispatch;
IWMSPlaylistTransformAdmin  *pPlaylistTransformAdmin;

HRESULT         hr;
CComVariant     varIndex;

// Initialize the COM library and retrieve a pointer
// to an IWMSServer interface.
hr = CoInitialize(NULL);
hr = CoCreateInstance(CLSID_WMSServer,
                      NULL,
                      CLSCTX_ALL,
                      IID_IWMSServer,
                      (void **)&pServer);
if (FAILED(hr)) goto EXIT;

// Retrieve a pointer to the IWMSPublishingPoints
// interface and the first publishing point in
// the collection.
hr = pServer->get_PublishingPoints(&pPubPoints);
if (FAILED(hr)) goto EXIT;
varIndex = 0;
hr = pPubPoints->get_Item(varIndex, &pPubPoint);
if (FAILED(hr)) goto EXIT;

// Retrieve a pointer to an IWMSPlugins interface
// containing event handler plug-ins.
hr = pPubPoint->get_EventHandlers(&pPlugins);
if (FAILED(hr)) goto EXIT;

// Retrieve a pointer to the IWMSPlugin interface
// of the plug-in to be configured.
varIndex = "WMS Playlist Transform";
hr = pPlugins->get_Item(varIndex, &pPlugin);
if (FAILED(hr)) goto EXIT;

// Retrieve a pointer to the custom interface
// of the plug-in.
hr = pPlugin->get_CustomInterface(&pDispatch);
if (FAILED(hr)) goto EXIT;

// Query the specific administration interface
// for the plug-in.
hr = pDispatch->QueryInterface(IID_IWMSPlaylistTransformAdmin,
                              (void **)&pPlaylistTransformAdmin);
if (FAILED(hr)) goto EXIT;

EXIT:
    // TODO: Release temporary COM objects and uninitialize COM.

See Also

Previous Next