def Process(self, info, values):
visitor_class_types = {<EOL>opendnp3.ICollectionIndexedBinary: VisitorIndexedBinary,<EOL>opendnp3.ICollectionIndexedDoubleBitBinary: VisitorIndexedDoubleBitBinary,<EOL>opendnp3.ICollectionIndexedCounter: VisitorIndexedCounter,<EOL>opendnp3.ICollectionIndexedFrozenCounter: VisitorIndexedFrozenCounter,<EOL>opendnp3.ICollectionIndexedAnalog: VisitorIndexedAnalog,<EOL>opendnp3.ICollectionIndexedBinaryOutputStatus: VisitorIndexedBinaryOutputStatus,<EOL>opendnp3.ICollectionIndexedAnalogOutputStatus: VisitorIndexedAnalogOutputStatus,<EOL>opendnp3.ICollectionIndexedTimeAndInterval: VisitorIndexedTimeAndInterval<EOL>}<EOL>visitor_class = visitor_class_types[type(values)]<EOL>visitor = visitor_class()<EOL>values.Foreach(visitor)<EOL>for index, value in visitor.index_and_value:<EOL><INDENT>log_string = '<STR_LIT>'<EOL>_log.debug(log_string.format(info.gv, info.headerIndex, type(values).__name__, index, value))<EOL><DEDENT>
Process measurement data.

:param info: HeaderInfo
:param values: A collection of values received from the Outstation (various data types are possible).