Main Page   Modules   Class Hierarchy   Alphabetical List   Compound List   Compound Members  

CSLVariantProxy Class Reference

#include <SL_Variant.h>

List of all members.

Public Types

Public Methods

Static Public Methods


Detailed Description

Class that allows the modification of any type of parameter in a template
Note:
A specialized proxy should be used whenever possible in order to limit unnecessary conversion.
See also:
CSLBoolProxy , CSLByteProxy , CSLDoubleProxy , CSLEnumProxy , CSLStrEnumProxy , CSLFloatProxy , CSLIntProxy , CSLLongProxy , CSLStringProxy , CSLUByteProxy , CSLULongProxy


Member Enumeration Documentation

enum CSLVariantProxy::EValueType
 

Type of the contained parameter.

Enumeration values:
SI_SLVT_INVALID  Invalid type. The default value for unconnected variant.
See also:
CSLVariantProxy::Connect
SI_SLVT_BOOL  CSLBoolProxy type
SI_SLVT_BYTE  CSLByteProxy type
SI_SLVT_UBYTE  CSLUByteProxy type
SI_SLVT_DOUBLE  CSLDoubleProxy type
SI_SLVT_FLOAT  CSLFloatProxy type
SI_SLVT_INT  CSLIntProxy type
SI_SLVT_LONG  CSLLongProxy type
SI_SLVT_ULONG  CSLULongProxy type
SI_SLVT_SHORT  CSLShortProxy type
SI_SLVT_STRING  CSLStringProxy type


Constructor & Destructor Documentation

CSLVariantProxy::CSLVariantProxy  
 

Default constructor.

Note:
This constructor does not call CSLVariantProxy::Connect and will set the variant type to CSLVariant::SI_SLVT_INVALID.

CSLVariantProxy::CSLVariantProxy CdotXSITemplate   in_pTemplate,
SI_Int    in_nIndex
 

Constructor that connects to a parameter in a template

Parameters:
in_pTemplate  Template containing the parameter to connect to
in_nIndex  Index of the parameter to connect to


Member Function Documentation

SI_Error CSLVariantProxy::Connect CdotXSITemplate   in_pTemplate,
SI_Int    in_nIndex
 

Connects the variant to a parameter in a template

Parameters:
in_pTemplate  Template containing the parameter to connect to
in_nIndex  Index of the parameter to connect to
Note:
Once connected, you can modify the parameter's value trough this proxy.

SI_Error CSLVariantProxy::GetTinyVarType SI_Int &    out_VariantType const
 

Gets the equivalent SI_TinyVariant variant type for this instance

Parameters:
out_VariantType  The equivalent SI_TinyVariant variant type
Return values:
SI_SUCCESS  Equivalent variant type found and put in out_VariantType
SI_ERR_BAD_ARGUMENT  The proxy is unconnected or failed to connect
See also:
CSLVariantProxy::Connect

CSLVariantProxy::EValueType CSLVariantProxy::GetType   const
 

Gets the type of the parameter referred by this proxy

SI_Error CSLVariantProxy::GetValue SI_TinyVariant   out_Variant const
 

Gets the value of the parameter referred by this proxy

Parameters:
out_Variant  The value of the parameter
Return values:
SI_SUCCESS  Got the value of the parameter
SI_ERR_BAD_ARGUMENT  Failed to get the value of the variant. This happens when CSLVariantProxy::Connect failed or wasn't called (i.e. The type of the variant is CSLVariantProxy::SI_SLVT_INVALID );
Warning:
You must not free the string pointer of SI_SLVT_STRING

SI_Error CSLVariantProxy::SetValue const CSLVariantProxy &    in_vVariant
 

Sets the value of the parameter referred by this proxy

Parameters:
in_vVariant  Value to put.
Return values:
SI_SUCCESS  Value was set
SI_ERR_BAD_ARGUMENT  The value types don't match or the proxy isn't connected
See also:
CSLVariantProxy::Connect , CSLVariantProxy::TinyVarType2SLVarType

SI_Error CSLVariantProxy::SetValue const SI_TinyVariant   in_vVariant
 

Sets the value of the parameter referred by this proxy

Parameters:
in_vVariant  Value to put.
Return values:
SI_SUCCESS  Value was set
SI_ERR_BAD_ARGUMENT  The value types don't match or the proxy isn't connected
See also:
CSLVariantProxy::Connect , CSLVariantProxy::TinyVarType2SLVarType

SI_Error CSLVariantProxy::TinyVarType2SLVarType const SI_TinyVariant   in_TinyVariant,
EValueType   out_Type
[static]
 

Returns the equivalent CSLVariantProxy::EValueType of a given SI_TinyVariant

Parameters:
in_TinyVariant  The tiny variant with the type to extract
out_Type  The equivalent type in CSLVariantProxy::EValueType.
Return values:
SI_SUCCESS  Equivalent variant type found and put in out_Type
SI_ERR_BAD_ARGUMENT  The SI_TinyVariant has no equivalent CSLVariantProxy::EValueType.


Member Data Documentation

CSLBoolProxy* CSLVariantProxy::m_pBool
 

CSLVariant::SI_SLVT_BOOL

CSLByteProxy* CSLVariantProxy::m_pByte
 

CSLVariant::SI_SLVT_BYTE

CSLDoubleProxy* CSLVariantProxy::m_pDouble
 

CSLVariant::SI_SLVT_DOUBLE

CSLFloatProxy* CSLVariantProxy::m_pFloat
 

CSLVariant::SI_SLVT_FLOAT

CSLIntProxy* CSLVariantProxy::m_pInt
 

CSLVariant::SI_SLVT_INT

CSLLongProxy* CSLVariantProxy::m_pLong
 

CSLVariant::SI_SLVT_LONG

CSLShortProxy* CSLVariantProxy::m_pShort
 

CSLVariant::SI_SLVT_SHORT

CSLStringProxy* CSLVariantProxy::m_pString
 

CSLVariant::SI_SLVT_STRING

CSLUByteProxy* CSLVariantProxy::m_pUByte
 

CSLVariant::SI_SLVT_UBYTE

CSLULongProxy* CSLVariantProxy::m_pULong
 

CSLVariant::SI_SLVT_ULONG


The documentation for this class was generated from the following files: © Copyright 2001-2003 Avid Technology, Inc. All rights reserved.

© Copyright 2001-2003 Avid Technology, Inc. All rights reserved.