Rogue Wave Views
Prototypes Package API Reference Guide
Product Documentation:

Rogue Wave Views
Documentation Home
List of all members | Public Member Functions | Protected Member Functions
IlvSwitchAccessor Class Reference

Implements a switch statement. More...

#include <ilviews/protos/condacc.h>

Inheritance diagram for IlvSwitchAccessor:
IlvUserAccessor IlvAccessor

Public Member Functions

 IlvSwitchAccessor (const char *name, const IlvValueTypeClass *type, IlvDisplay *display, const char *test, IlUInt numValues, const char **values)
 Creates a new switch accessor. More...
 
- Public Member Functions inherited from IlvUserAccessor
 IlvUserAccessor (const char *name, const IlvValueTypeClass *type, IlUInt flags=0)
 Constructor. More...
 
virtual void initialize (const IlvAccessorHolder *object)
 Attachment method to an IlvAccessorHolder. More...
 
virtual IlBoolean isOutputValue (const IlSymbol *) const
 Queries if the accessor is an output accessor. More...
 
IlBoolean isPrivate () const
 Checks the private status. More...
 
IlBoolean isRuntime () const
 Checks the RunTime status. More...
 
void setPrivate (IlBoolean val)
 Sets the Private flag of this accessor. More...
 
void setRuntime (IlBoolean runTime)
 Sets the RunTime flag of this accessor. More...
 
- Public Member Functions inherited from IlvAccessor
 IlvAccessor (const char *name, IlvValueTypeClass *type)
 Creates a new accessor of name name and type type.
 
virtual IlBoolean changeValues (IlvAccessorHolder *object, const IlvValue *values, IlUShort count)
 Called by the method IlvAccessible::changeValues() for each IlvAccessor attached to the IlvAccessorHolder.
 
virtual void getAccessors (const IlSymbol *const **accessors, const IlvValueTypeClass *const **types, IlUInt &count) const
 Returns the names and types of the values handled by this accessor. More...
 
const IlSymbolgetName () const
 Returns the name of the accessor. More...
 
IlvValueTypeClassgetType () const
 Returns the type of the accessor. More...
 
virtual IlBoolean isOutputAccessor (IlBoolean &inputAndOutput)
 Queries if the accessor is an output accessor. More...
 
virtual IlShort matchValues (const IlvAccessorHolder *object, const IlvValue *values, IlUShort count, IlvValue *matchingValues=0) const
 Returns the number of values that are handled by the accessor in the values array of length count. More...
 
virtual IlvValuequeryValue (const IlvAccessorHolder *object, IlvValue &val) const
 Called by the method IlvAccessible::queryValue() for each IlvAccessor attached to the IlvAccessorHolder.
 
virtual void queryValues (const IlvAccessorHolder *object, IlvValue *values, IlUShort count) const
 Called by the method IlvAccessible::queryValues() for each IlvAccessor attached to the IlvAccessorHolder.
 
void setName (const IlSymbol *name)
 Sets the name of the accessor. More...
 

Protected Member Functions

virtual IlBoolean changeValue (IlvAccessorHolder *object, const IlvValue &val)
 Called by the method IlvAccessible::changeValue() for each IlvAccessor attached to the IlvAccessorHolder.
 
- Protected Member Functions inherited from IlvUserAccessor
virtual IlUInt compareValues (const IlvAccessorHolder *object, const IlvAccessible *ref, IlvValue *values, IlUShort count, IlvValueArray &diffs) const
 Compares the values in ref and object and returns the differing values. More...
 
IlBoolean getValue (IlvValue &val, const IlvAccessorHolder *object, IlvDisplay *display, IlvValueTypeClass *typeClass=0, IlSymbol *typeVal=0, const IlvValue *arg=0) const
 Evaluates a parameter of a user accessor. More...
 

Detailed Description

Implements a switch statement.

Library: ilvproto

Depending on the value of the first parameter, one of the attributes is triggered. When a changeValue() call to this behavior is made, the first parameter is evaluated and cast into an integer value,

If the ith + 1 parameter represents the name of an attribute of the prototype, then, it is assigned the value of the attribute. If there are less than i+1 parameters, then the last parameter is assigned the value of the second parameter. Hence, the last parameter serves as a "default" statement.

As an example, see the Traffic light prototype in the Samples library.

See also
IlvTriggerAccessor.

Constructor & Destructor Documentation

IlvSwitchAccessor::IlvSwitchAccessor ( const char *  name,
const IlvValueTypeClass type,
IlvDisplay display,
const char *  test,
IlUInt  numValues,
const char **  values 
)

Creates a new switch accessor.

Parameters
nameName of the attribute.
typeType of the attribute. Used only for initialization purposes.
displayA display used to initialize attributes that might be display-dependent.
testExpression that should return an integer.
numValuesNumber of possible cases. There should be at least one case.
valuesArray of numValues attribute names.

© Copyright 2016, Rogue Wave Software, Inc. All Rights Reserved.
Rogue Wave is a registered trademark of Rogue Wave Software, Inc. in the United States and other countries. All other trademarks are the property of their respective owners.