/*******************************************************************************
 *  Copyright 2018 Centre for Development of Advanced Computing(C-DAC), Pune
 *  
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *  
 *   http://www.apache.org/licenses/LICENSE-2.0
 *  
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 *******************************************************************************/
package cdac.medinfo.sdk.dcm30_04.templates.stresstestingreporttemplates;

import cdac.medinfo.sdk.dcm30_04.baselibs.ContentSequenceItem;
import cdac.medinfo.sdk.dcm30_04.dicommodel.modules.SRDocumentContentModule;
import cdac.medinfo.sdk.dcm30_04.enums.EnumContinuityOfContent;
import cdac.medinfo.sdk.dcm30_04.srtree.SRTree;
import cdac.medinfo.sdk.dcm30_04.templates.cid.ComparisonFinding_CID3217;
import cdac.medinfo.sdk.dcm30_04.templates.cid.PerfusionComparisonFindings_CID3235;
import cdac.medinfo.sdk.dcm30_04.templates.cid.PerfusionFindingMethod_CID3215;
import cdac.medinfo.sdk.dcm30_04.templates.cid.RestStress_CID3102;
import cdac.medinfo.sdk.dcm30_04.templates.cid.StressTestProcedure_CID3200;
import cdac.medinfo.sdk.dcm30_04.templates.cid.ToleranceComparisonFindings_CID3236;
import cdac.medinfo.sdk.dcm30_04.templates.cid.WallMotionComparisonFindings_CID3237;
import cdac.medinfo.sdk.dcm30_04.templates.enums.EnumCodingSchemeDesignator;
import cdac.medinfo.sdk.dcm30_04.templates.enums.cm.EnumCM_ComparisonFinding;
import cdac.medinfo.sdk.dcm30_04.templates.enums.cm.EnumCM_ComparisonToPriorStressExam;
import cdac.medinfo.sdk.dcm30_04.templates.enums.cm.EnumCM_PerfusionComparisonFindings;
import cdac.medinfo.sdk.dcm30_04.templates.enums.cm.EnumCM_PerfusionFindingMethod;
import cdac.medinfo.sdk.dcm30_04.templates.enums.cm.EnumCM_RestStress;
import cdac.medinfo.sdk.dcm30_04.templates.enums.cm.EnumCM_StressTestProcedure;
import cdac.medinfo.sdk.dcm30_04.templates.enums.cm.EnumCM_ToleranceComparisonFindings;
import cdac.medinfo.sdk.dcm30_04.templates.enums.cm.EnumCM_WallMotionComparisonFindings;
import cdac.medinfo.sdk.dcm30_04.templates.enums.cv.EnumCV_ComparisonToPriorStressExam;
import cdac.medinfo.sdk.dcm30_04.templates.generaltemplates.Template;

/**
 * This class represents ComparisonToPriorStressExam_TID3318
 */
public class ComparisonToPriorStressExam_TID3318 extends Template
{
	
	/**
	 * Object of ToleranceComparisonFindings_CID3236
	 */
	private ToleranceComparisonFindings_CID3236 objToleranceComparisonFindingsCID3236;
	
	/**
	 * Object of StressTestProcedure_CID3200
	 */
	private StressTestProcedure_CID3200 objStressTestProcedureCID3200;
	
	/**
	 * Object of PerfusionComparisonFindings_CID3235
	 */
	private PerfusionComparisonFindings_CID3235 objPerfusionComparisonFindingsCID3235;
	
	/**
	 * Object of PerfusionFindingMethod_CID3215
	 */
	private PerfusionFindingMethod_CID3215 objPerfusionFindingMethodCID3215;
	
	/**
	 * Object of WallMotionComparisonFindings_CID3237
	 */
	private WallMotionComparisonFindings_CID3237 objWallMotionComparisonFindingsCID3237;
	
	/**
	 * Object of RestStress_CID3102
	 */
	private RestStress_CID3102 objRestStressCID3102;
	
	/**
	 * Object of ComparisonFinding_CID3217
	 */
	private ComparisonFinding_CID3217 objComparisonFindingCID3217;
		
	/**
	 * Instantiates a new ComparisonToPriorStressExam_TID3318 Template.
	 * @param objTree Object of SRTree.
	 */
	public ComparisonToPriorStressExam_TID3318(SRTree objTree)
	{
		super(objTree);
	}
	
	/**
	 * Sets the value for Comparison to previous exams.
	 * @param arrPosition Identifier which shows the position of the node in the SR Tree.
	 * @param enumContinuityOfContent 
	 */
	public void setComparisonTopreviousExams(int[] arrPosition, EnumContinuityOfContent enumContinuityOfContent)
	{
		/**
		 * Retrieves the corresponding values of CodeMeaning,CodeValue and CodingSchemeDesignator.
		 */
		String strCodeMeaning = EnumCM_ComparisonToPriorStressExam.COMPARISION_TO_PREVIOUS_EXAMS.getValue();
		String strCodeValue = EnumCV_ComparisonToPriorStressExam.COMPARISION_TO_PREVIOUS_EXAMS_111424.getValue();
		String strCSD = EnumCodingSchemeDesignator.DCM.getValue();

		/**
		 * Creating a node of Value Type CONTAINER and adding this node as root of a tree.
		 */
		SRDocumentContentModule objDocumentContentModule = getSRTree().getSRDocumentContentModule();
		getSRTree().createRoot(objDocumentContentModule,strCodeMeaning,strCodeValue , strCSD, enumContinuityOfContent);
	}
	
	/**
	 * Sets the value for Myocardial Perfusion.
	 * @param arrPosition Identifier which shows the position of the node in the SR Tree.
	 */
	public void setMyocardialPerfusion(int[] arrPosition, EnumCM_PerfusionComparisonFindings enumPerfusionComparisonFindings)
	{
		/**
		 * Retrieves the corresponding values of CodeMeaning,CodeValue and CodingSchemeDesignator.
		 */
		String strCodeMeaning = EnumCM_ComparisonToPriorStressExam.MYOCARDIAL_PERFUSION.getValue();
		String strCodeValue = EnumCV_ComparisonToPriorStressExam.MYOCARDIAL_PERFUSION_F_0238D.getValue();
		String strCSDesg = EnumCodingSchemeDesignator.SRT.getValue();
		/**
		 * Retrieves the corresponding values of CodeMeaning,CodeValue and CodingSchemeDesignator.
		 */
		
		if(null== this.objPerfusionComparisonFindingsCID3235)
			this.objPerfusionComparisonFindingsCID3235 = new PerfusionComparisonFindings_CID3235();
		this.objPerfusionComparisonFindingsCID3235.setPerfusionComparisonFindings(enumPerfusionComparisonFindings);

		String strCM = objPerfusionComparisonFindingsCID3235.getCodeMeaning();
		String strCV = objPerfusionComparisonFindingsCID3235.getCodeValue();
		String strCSD = objPerfusionComparisonFindingsCID3235.getCodingSchemeDesignator();
		String strSNOMEDCTID = objPerfusionComparisonFindingsCID3235.getSNOMEDCTID();
		/**
		 *Creating a node of Value Type CODE and adding this node at specified identifier in the SR Tree.
		 */
		ContentSequenceItem objContentSequenceItem = getSRTree().createCodeNode(arrPosition, strCodeMeaning, strCodeValue, strCSD, strCSDesg, strCV, strCM,strSNOMEDCTID);
		getSRTree().addChild(objContentSequenceItem);
	}
		
	/**
	 * Sets the value for Measurement Method.
	 * @param arrPosition Identifier which shows the position of the node in the SR Tree.
	 */
	public void setMeasurementMethod(int[] arrPosition, EnumCM_PerfusionFindingMethod enumPerfusionFindingMethod)
	{
		/**
		 * Retrieves the corresponding values of CodeMeaning,CodeValue and CodingSchemeDesignator.
		 */
		String strCodeMeaning = EnumCM_ComparisonToPriorStressExam.MEASUREMENT_METHOD.getValue();
		String strCodeValue = EnumCV_ComparisonToPriorStressExam.MEASUREMENT_METHOD_G_C036.getValue();
		String strCSDesg = EnumCodingSchemeDesignator.SRT.getValue();
		/**
		 * Retrieves the corresponding values of CodeMeaning,CodeValue and CodingSchemeDesignator.
		 */
		
		if(null== this.objPerfusionFindingMethodCID3215)
			this.objPerfusionFindingMethodCID3215 = new PerfusionFindingMethod_CID3215();
		this.objPerfusionFindingMethodCID3215.setPerfusionFindingMethod(enumPerfusionFindingMethod);

		String strCM = objPerfusionFindingMethodCID3215.getCodeMeaning();
		String strCV = objPerfusionFindingMethodCID3215.getCodeValue();
		String strCSD = objPerfusionFindingMethodCID3215.getCodingSchemeDesignator();
		String strSNOMEDCTID = objPerfusionFindingMethodCID3215.getSNOMEDCTID();
		/**
		 *Creating a node of Value Type CODE and adding this node at specified identifier in the SR Tree.
		 */
		ContentSequenceItem objContentSequenceItem = getSRTree().createCodeNode(arrPosition, strCodeMeaning, strCodeValue, strCSD, strCSDesg, strCV, strCM,strSNOMEDCTID);
		getSRTree().addChild(objContentSequenceItem);
	}
	/**
	 * Sets the value for LV Wall motion.
	 * @param arrPosition Identifier which shows the position of the node in the SR Tree.
	 */
	public void setLVWallMotion(int[] arrPosition, EnumCM_WallMotionComparisonFindings enumWallMotionComparisonFindings)
	{
		/**
		 * Retrieves the corresponding values of CodeMeaning,CodeValue and CodingSchemeDesignator.
		 */
		String strCodeMeaning = EnumCM_ComparisonToPriorStressExam.LV_WALL_MOTION.getValue();
		String strCodeValue = EnumCV_ComparisonToPriorStressExam.LV_WALL_MOTION_F_02225.getValue();
		String strCSDesg = EnumCodingSchemeDesignator.SRT.getValue();
		/**
		 * Retrieves the corresponding values of CodeMeaning,CodeValue and CodingSchemeDesignator.
		 */
		
		if(null== this.objWallMotionComparisonFindingsCID3237)
			this.objWallMotionComparisonFindingsCID3237 = new WallMotionComparisonFindings_CID3237();
		this.objWallMotionComparisonFindingsCID3237.setWallMotionComparisonFindings(enumWallMotionComparisonFindings);

		String strCM = objWallMotionComparisonFindingsCID3237.getCodeMeaning();
		String strCV = objWallMotionComparisonFindingsCID3237.getCodeValue();
		String strCSD = objWallMotionComparisonFindingsCID3237.getCodingSchemeDesignator();
		String strSNOMEDCTID = objWallMotionComparisonFindingsCID3237.getSNOMEDCTID();
		/**
		 *Creating a node of Value Type CODE and adding this node at specified identifier in the SR Tree.
		 */
		ContentSequenceItem objContentSequenceItem = getSRTree().createCodeNode(arrPosition, strCodeMeaning, strCodeValue, strCSD, strCSDesg, strCV, strCM,strSNOMEDCTID);
		getSRTree().addChild(objContentSequenceItem);
	}
	
	/**
	 * Sets the value for Patient State.
	 * @param arrPosition Identifier which shows the position of the node in the SR Tree.
	 */
	public void setPatientState(int[] arrPosition, EnumCM_RestStress enumRestStress)
	{
		/**
		 * Retrieves the corresponding values of CodeMeaning,CodeValue and CodingSchemeDesignator.
		 */
		String strCodeMeaning = EnumCM_ComparisonToPriorStressExam.PATIENT_STATE.getValue();
		String strCodeValue = EnumCV_ComparisonToPriorStressExam.PATIENT_STATE_109054.getValue();
		String strCSDesg = EnumCodingSchemeDesignator.DCM.getValue();
		/**
		 * Retrieves the corresponding values of CodeMeaning,CodeValue and CodingSchemeDesignator.
		 */
		
		if(null== this.objRestStressCID3102)
			this.objRestStressCID3102 = new RestStress_CID3102();
		this.objRestStressCID3102.setRestStress(enumRestStress);

		String strCM = objRestStressCID3102.getCodeMeaning();
		String strCV = objRestStressCID3102.getCodeValue();
		String strCSD = objRestStressCID3102.getCodingSchemeDesignator();
		String strSNOMEDCTID = objRestStressCID3102.getSNOMEDCTID();
		/**
		 *Creating a node of Value Type CODE and adding this node at specified identifier in the SR Tree.
		 */
		ContentSequenceItem objContentSequenceItem = getSRTree().createCodeNode(arrPosition, strCodeMeaning, strCodeValue, strCSD, strCSDesg, strCV, strCM,strSNOMEDCTID);
		getSRTree().addChild(objContentSequenceItem);
	}
	
	/**
	 * Sets the value for Comparison to previous exams.
	 * @param arrPosition Identifier which shows the position of the node in the SR Tree.
	 * @param enumContinuityOfContent 
	 */
	public void setComparisonTopreviousExams(int[] arrPosition, EnumCM_ComparisonFinding enumComparisonFinding)
	{
		/**
		 * Retrieves the corresponding values of CodeMeaning,CodeValue and CodingSchemeDesignator.
		 */
		String strCodeMeaning = EnumCM_ComparisonToPriorStressExam.COMPARISION_TO_PREVIOUS_EXAMS.getValue();
		String strCodeValue = EnumCV_ComparisonToPriorStressExam.COMPARISION_TO_PREVIOUS_EXAMS_111424.getValue();
		String strCSDesg = EnumCodingSchemeDesignator.DCM.getValue();
		/**
		 * Retrieves the corresponding values of CodeMeaning,CodeValue and CodingSchemeDesignator.
		 */
		
		if(null== this.objComparisonFindingCID3217)
			this.objComparisonFindingCID3217 = new ComparisonFinding_CID3217();
		this.objComparisonFindingCID3217.setComparisonFinding(enumComparisonFinding);

		String strCM = objComparisonFindingCID3217.getCodeMeaning();
		String strCV = objComparisonFindingCID3217.getCodeValue();
		String strCSD = objComparisonFindingCID3217.getCodingSchemeDesignator();
	
		/**
		 *Creating a node of Value Type CODE and adding this node at specified identifier in the SR Tree.
		 */
		ContentSequenceItem objContentSequenceItem = getSRTree().createCodeNode(arrPosition, strCodeMeaning, strCodeValue, strCSD, strCSDesg, strCV, strCM,"");
		getSRTree().addChild(objContentSequenceItem);
	}
	
	/**
	 * Sets the value for Procedure Reported.
	 * @param arrPosition Identifier which shows the position of the node in the SR Tree.
	 */
	public void setProcedureReported(int[] arrPosition, EnumCM_StressTestProcedure enumStressTestProcedure )
	{
		/**
		 * Retrieves the corresponding values of CodeMeaning,CodeValue and CodingSchemeDesignator.
		 */
		String strCodeMeaning = EnumCM_ComparisonToPriorStressExam.PROCEDURE_REPORTED.getValue();
		String strCodeValue = EnumCV_ComparisonToPriorStressExam.PROCEDURE_REPORTED_121058.getValue();
		String strCSDesg = EnumCodingSchemeDesignator.DCM.getValue();
		/**
		 * Retrieves the corresponding values of CodeMeaning,CodeValue and CodingSchemeDesignator.
		 */
		
		if(null== this.objStressTestProcedureCID3200)
			this.objStressTestProcedureCID3200 = new StressTestProcedure_CID3200();
		this.objStressTestProcedureCID3200.setStressTestProcedure(enumStressTestProcedure);

		String strCM = objStressTestProcedureCID3200.getCodeMeaning();
		String strCV = objStressTestProcedureCID3200.getCodeValue();
		String strCSD = objStressTestProcedureCID3200.getCodingSchemeDesignator();
		String strSNOMEDCTID = objStressTestProcedureCID3200.getSNOMEDCTID();
		/**
		 *Creating a node of Value Type CODE and adding this node at specified identifier in the SR Tree.
		 */
		ContentSequenceItem objContentSequenceItem = getSRTree().createCodeNode(arrPosition, strCodeMeaning, strCodeValue, strCSD, strCSDesg, strCV, strCM,strSNOMEDCTID);
		getSRTree().addChild(objContentSequenceItem);
	}
	
	/**
	 * Sets the value for Exercise tolerance.
	 * @param arrPosition Identifier which shows the position of the node in the SR Tree.
	 */
	public void setExerciseTolerance(int[] arrPosition, EnumCM_ToleranceComparisonFindings enumToleranceComparisonFindings)
	{
		/**
		 * Retrieves the corresponding values of CodeMeaning,CodeValue and CodingSchemeDesignator.
		 */
		String strCodeMeaning = EnumCM_ComparisonToPriorStressExam.EXERCISE_TOLERANCE.getValue();
		String strCodeValue = EnumCV_ComparisonToPriorStressExam.EXERCISE_TOLERANCE_F_03D1D.getValue();
		String strCSDesg = EnumCodingSchemeDesignator.SRT.getValue();
		/**
		 * Retrieves the corresponding values of CodeMeaning,CodeValue and CodingSchemeDesignator.
		 */
		
		if(null== this.objToleranceComparisonFindingsCID3236)
			this.objToleranceComparisonFindingsCID3236 = new ToleranceComparisonFindings_CID3236();
		this.objToleranceComparisonFindingsCID3236.setToleranceComparisonFindings(enumToleranceComparisonFindings);

		String strCM = objToleranceComparisonFindingsCID3236.getCodeMeaning();
		String strCV = objToleranceComparisonFindingsCID3236.getCodeValue();
		String strCSD = objToleranceComparisonFindingsCID3236.getCodingSchemeDesignator();
		String strSNOMEDCTID = objToleranceComparisonFindingsCID3236.getSNOMEDCTID();
		/**
		 *Creating a node of Value Type CODE and adding this node at specified identifier in the SR Tree.
		 */
		ContentSequenceItem objContentSequenceItem = getSRTree().createCodeNode(arrPosition, strCodeMeaning, strCodeValue, strCSD, strCSDesg, strCV, strCM,strSNOMEDCTID);
		getSRTree().addChild(objContentSequenceItem);
	}
	
	/**
	 * Sets the value for Procedure DateTime.
	 * @param arrPosition Identifier which shows the position of the node in the SR Tree.
	 */
	public void setProcedureDateTime(int[] arrPosition)
	{
		/**
		 * Retrieves the corresponding values of CodeMeaning,CodeValue and CodingSchemeDesignator.
		 */
		String strCodeMeaning = EnumCM_ComparisonToPriorStressExam.PROCEDURE_DATETIME.getValue();
		String strCodeValue = EnumCV_ComparisonToPriorStressExam.PROCEDURE_DATETIME_122146.getValue();
		String strCSDesg = EnumCodingSchemeDesignator.DCM.getValue();
	
		/**
		 *Creating a node of Value Type DATETIME and adding this node at specified identifier in the SR Tree.
		 */
		ContentSequenceItem objContentSequenceItem = getSRTree().createDateTimeNode(arrPosition, strCodeMeaning, strCodeValue, strCSDesg, "");
		getSRTree().addChild(objContentSequenceItem);
	}
	/**
	 * Sets the value for Procedure Study Instance UID.
	 * @param arrPosition Identifier which shows the position of the node in the SR Tree.
	 */
	public void setProcedureStudyInstanceUID(int[] arrPosition)
	{
		/**
		 * Retrieves the corresponding values of CodeMeaning,CodeValue and CodingSchemeDesignator.
		 */
		String strCodeMeaning = EnumCM_ComparisonToPriorStressExam.PROCEDURE_STUDY_INSTANCE_UID.getValue();
		String strCodeValue = EnumCV_ComparisonToPriorStressExam.PROCEDURE_STUDY_INSTANCE_UID_121018.getValue();
		String strCSDesg = EnumCodingSchemeDesignator.DCM.getValue();
	
		/**
		 *Creating a node of Value Type UIDREF and adding this node at specified identifier in the SR Tree.
		 */
		ContentSequenceItem objContentSequenceItem = getSRTree().createUIDREFNode(arrPosition, strCodeMeaning, strCodeValue, strCSDesg, "");
		getSRTree().addChild(objContentSequenceItem);
	}
	/**
	 * Sets the value for Prior report for current patient.
	 * @param arrPosition Identifier which shows the position of the node in the SR Tree.
	 */
	public void setPriorReportForCurrentPatient(int[] arrPosition)
	{
		/**
		 * Retrieves the corresponding values of CodeMeaning,CodeValue and CodingSchemeDesignator.
		 */
		String strCodeMeaning = EnumCM_ComparisonToPriorStressExam.PRIOR_REPORT_FOR_CURRENT_PATIENT.getValue();
		String strCodeValue = EnumCV_ComparisonToPriorStressExam.PRIOR_REPORT_FOR_CURRENT_PATIENT_122075.getValue();
		String strCSDesg = EnumCodingSchemeDesignator.DCM.getValue();
	
		/**
		 *Creating a node of Value Type COMPOSITE and adding this node at specified identifier in the SR Tree.
		 */
		ContentSequenceItem objContentSequenceItem = getSRTree().createCompositeNode(arrPosition, strCodeMeaning, strCodeValue, strCSDesg, "", "");
		getSRTree().addChild(objContentSequenceItem);
	}
	
	/**
	 * Sets the value for Difference in Ejection Fraction.
	 * @param arrPosition Identifier which shows the position of the node in the SR Tree.
	 * @param arrNumericValue 
	 */
	public void setDifferenceInEjectionFraction(int[] arrPosition, String[] arrNumericValue)
	{
		/**
		 * Retrieves the corresponding values of CodeMeaning,CodeValue and CodingSchemeDesignator.
		 */
		String strCodeMeaning = EnumCM_ComparisonToPriorStressExam.DIFFERENCE_IN_EJECTION_FRACTION.getValue();
		String strCodeValue = EnumCV_ComparisonToPriorStressExam.DIFFERENCE_IN_EJECTION_FRACTION_122768.getValue();
		String strCSDesg = EnumCodingSchemeDesignator.DCM.getValue();
	
		/**
		 *Creating a node of Value Type NUM and adding this node at specified identifier in the SR Tree.
		 */
		ContentSequenceItem objContentSequenceItem = getSRTree().createNumNode(arrPosition, strCodeMeaning, strCodeValue, strCSDesg, arrNumericValue, "", "", "", "", "", "", "", "");
		getSRTree().addChild(objContentSequenceItem);
	}
	
	/**
	 * Sets the value for Difference in ED LV Volume.
	 * @param arrPosition Identifier which shows the position of the node in the SR Tree.
	 * @param arrNumericValue 
	 */
	public void setDifferenceInEDLVVolume(int[] arrPosition, String[] arrNumericValue)
	{
		/**
		 * Retrieves the corresponding values of CodeMeaning,CodeValue and CodingSchemeDesignator.
		 */
		String strCodeMeaning = EnumCM_ComparisonToPriorStressExam.DIFFERENCE_IN_ED_LV_VOLUME.getValue();
		String strCodeValue = EnumCV_ComparisonToPriorStressExam.DIFFERENCE_IN_ED_LV_VOLUME_122769.getValue();
		String strCSDesg = EnumCodingSchemeDesignator.DCM.getValue();
	
		/**
		 *Creating a node of Value Type NUM and adding this node at specified identifier in the SR Tree.
		 */
		ContentSequenceItem objContentSequenceItem = getSRTree().createNumNode(arrPosition, strCodeMeaning, strCodeValue, strCSDesg, arrNumericValue, "", "", "", "", "", "", "", "");
		getSRTree().addChild(objContentSequenceItem);
	}
	
	/**
	 * Sets the value for Index.
	 * @param arrPosition Identifier which shows the position of the node in the SR Tree.
	 * @param arrNumericValue 
	 */
	public void setIndex(int[] arrPosition)
	{
		/**
		 * Retrieves the corresponding values of CodeMeaning,CodeValue and CodingSchemeDesignator.
		 */
		String strCodeMeaning = EnumCM_ComparisonToPriorStressExam.INDEX.getValue();
		String strCodeValue = EnumCV_ComparisonToPriorStressExam.INDEX_121425.getValue();
		String strCSDesg = EnumCodingSchemeDesignator.DCM.getValue();
	
		/**
		 *Creating a node of Value Type CODE and adding this node at specified identifier in the SR Tree.
		 */
		ContentSequenceItem objContentSequenceItem = getSRTree().createCodeNode(arrPosition, strCodeMeaning, strCodeValue, "", strCSDesg, "", "","");
		getSRTree().addChild(objContentSequenceItem);
	}
	/**
	 * Sets the value for BSA.
	 * @param arrPosition Identifier which shows the position of the node in the SR Tree.
	 * @param arrNumericValue 
	 */
	public void setBSA(int[] arrPosition)
	{
		/**
		 * Retrieves the corresponding values of CodeMeaning,CodeValue and CodingSchemeDesignator.
		 */
		String strCodeMeaning = EnumCM_ComparisonToPriorStressExam.BSA.getValue();
		String strCodeValue = EnumCV_ComparisonToPriorStressExam.BSA_8277_6.getValue();
		String strCSDesg = EnumCodingSchemeDesignator.LN.getValue();
	
		/**
		 *Creating a node of Value Type CODE and adding this node at specified identifier in the SR Tree.
		 */
		ContentSequenceItem objContentSequenceItem = getSRTree().createCodeNode(arrPosition, strCodeMeaning, strCodeValue, "", strCSDesg, "", "","");
		getSRTree().addChild(objContentSequenceItem);
	}
}
