Rogue Wave Views 5.5.1 |
Rogue Wave Views |
Rogue Wave Views Documentation Home |
Accessor allowing handling several values at the same time. More...
#include <ilviews/protos/accessor.h>
Public Member Functions | |
IlvMultipleAccessor (const char *name, IlUShort count, const char **names, IlvValueTypeClass ***types) | |
Creates a new multiple accessor of name name. | |
IlvMultipleAccessor (const char *name, IlUShort count, const char **names, IlvValueTypeClass **types) | |
See below. | |
Protected Member Functions | |
virtual IlBoolean | changeValue (IlvAccessorHolder *object, const IlvValue &val) |
Called by the method IlvAccessible::changeValue 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. | |
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. | |
virtual IlvValue & | queryValue (const IlvAccessorHolder *object, IlvValue &val) const |
Called by the method IlvAccessible::queryValue for each IlvAccessor attached to the IlvAccessorHolder . |
Accessor allowing handling several values at the same time.
Library: ilvproto
IlvMultipleAccessor
is a subclass of IlvAccessor
that is designed to handle several values at the same time. For example, the manager and layer values of an IlvGraphicNode
should be handled together, so that the changeValues
method can have both values to call manager->addObject(obj,layer)
. This class of accessors is usually not used directly by applications. It is used internally by subclasses of the IlvGroupNode
class.
IlvGroupNode
, IlvMultipleGroupAccessor
. IlvMultipleAccessor::IlvMultipleAccessor | ( | const char * | name, | |
IlUShort | count, | |||
const char ** | names, | |||
IlvValueTypeClass *** | types | |||
) |
Creates a new multiple accessor of name name.
The accessor handles count values of names names and types types.
virtual void IlvMultipleAccessor::getAccessors | ( | const IlSymbol *const ** | accessors, | |
const IlvValueTypeClass *const ** | types, | |||
IlUInt & | count | |||
) | const [protected, virtual] |
Returns the names and types of the values handled by this accessor.
IlvMultipleAccessor
) may add several names and types to signal that the accessor can respond to requests for several values. Reimplemented from IlvAccessor.
virtual IlShort IlvMultipleAccessor::matchValues | ( | const IlvAccessorHolder * | object, | |
const IlvValue * | values, | |||
IlUShort | count, | |||
IlvValue * | matchingValues = 0 | |||
) | const [protected, virtual] |
Returns the number of values that are handled by the accessor in the values array of length count.
The matching values are copied to the matchingValues array, which must have a length of at least count. This method is called by the changeValue
[s]/queryValue
[s] methods of the IlvAccessorHolder
class to determine which IlvAccessor
s respond to a request for a set of value names. All the accessors that return a non-null count of matching values will be called by the IlvAccessorHolder
, with the matching values as arguments. The base class implementation looks for a value corresponding to the accessor name given in values and copies it to matchingValues. Subclasses of IlvAccessor
(for example IlvMultipleAccessor
) may match several values.
Reimplemented from IlvAccessor.
© Copyright 2012, 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.