Main Page | Modules | Data Structures | File List | Data Fields | Globals

livido_channel_template Struct Reference
[Channel template]

#include <livido.h>


Detailed Description

Template provided by plugin to describe in/out channels.

This structure is a template describing every single possible channel, it is held by the filter template and used to put create livido_channel structures passed back to plugin at initialization of the filter

IMPORTANT: Host NEVER changes any part of this structure

Definition at line 373 of file livido.h.

Data Fields

char * name
 name of the channel

int flags
 flags for this channel (read-only)

int * palettes
 list of palettes supported by plugin

int same_as
 size and palette must be the same as another channel

int width
 the only width supported by plugin, 0 if any

int height
 the only height supported by plugin, 0 if any

livido_channel_templatenext
 pointer to the next element in the list, NULL if end

char reserved [64]
 reserved space for binary compatibility thru versions


Field Documentation

int livido_channel_template::flags
 

flags for this channel (read-only)

See further down for a list of possible flags. If channel is optional, host is allowed not to use it. IMPORTANT: Optional channels ALWAYS come at the end of the channel list

Definition at line 386 of file livido.h.

char* livido_channel_template::name
 

name of the channel

This field can be set to the name of the channel (e.g. "Input 1").

GOOD PRACTICE: Avoid using words like "channel" inside the name, since it is implicit.

Definition at line 380 of file livido.h.

int* livido_channel_template::palettes
 

list of palettes supported by plugin

The plugin sets this pointer to an array of palettes it can accept on this channel, in order of preference, NULL terminated.

Before initialization, the host will set his selected value(s) in order of preference inside the channel (livido_channel) hold by the filter (livido_instance)

Definition at line 395 of file livido.h.

int livido_channel_template::same_as
 

size and palette must be the same as another channel

The plugin can use this field to tell the host that the settings of palette choice and size (width/height) must match that of another channel. A normal use would be to mark the first output channel must match the first input channel.

  • a positive value X means "must match input channel X"
  • a negative value X means "must match output channel X"
  • a setting of ZERO implies free choice for palette and size settings.

IMPORTANT: this way it can only reference channels that have serial numbers smaller then current. in case of output channels they can also reference all input channels, but input channels cannot refer to output channels. This way we avoid circular dependencies!

Definition at line 411 of file livido.h.

int livido_channel_template::width
 

the only width supported by plugin, 0 if any

Channel width and height, the plugin will leave those to 0 if host can choose them arbitrarily.

IMPORTANT: You cannot just set height but leave width arbitrary or vice versa. Both have to be zero or both have to be some other value

Definition at line 421 of file livido.h.


The documentation for this struct was generated from the following file:
Generated on Wed Apr 6 20:21:07 2005 for LiViDO by doxygen 1.3.4