All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.biojava.spark.mappers.CalculateFrequency Maven / Gradle / Ivy

package org.biojava.spark.mappers;


import org.apache.spark.api.java.function.FlatMapFunction;
import org.biojava.nbio.structure.Atom;
import org.biojava.spark.utils.BiojavaSparkUtils;
import org.rcsb.mmtf.api.StructureDataInterface;
import org.rcsb.mmtf.spark.data.AtomSelectObject;

import scala.Tuple2;

/**
 * A class to calculate the frequency of a given atom defined
 * in a {@link AtomSelectObject} object.
 * @author Anthony Bradley
 *
 */
public class CalculateFrequency  implements FlatMapFunction, Atom>{


	/**
	 * A generated serial id.
	 */
	private static final long serialVersionUID = 6829051271366307056L;
	
	private AtomSelectObject selectObject;

	/**
	 * Constructor for the {@link CalculateFrequency} class.
	 * @param selectObject the atoms to be elected
	 */
	public CalculateFrequency(AtomSelectObject selectObject) {
		this.selectObject = selectObject;
	}


	@Override
	public Iterable call(Tuple2 t) throws Exception {
		StructureDataInterface structure = t._2;
		// Get the atoms
		return BiojavaSparkUtils.getAtoms(structure, selectObject);
	}


}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy