private static FilterStateResult meterGroups <A, B>(CollectionFilter filter, A groups, B state, int metering, FilterEnv env) { FilterStateResult result; string prop = filter.getAssignmentNameProperty(); foreach (A i in groups) //TODO.begin(); i != groups.end() && result.isOK(); i++ ) { if (prop.Length > 0) { env.setProperty(new Property(prop, i.first)); //TODO osgGIS::debug() << "[CollectionFilterState] Metering group '" << i.first << "', prop='" << prop << "'" << std::endl; } filter.preMeter(i.second, env); result = meterData(i.second, state, metering, env); } return(result); }