/*******************************************************************************
 *  Copyright 2017-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.procedurelogiodtemplates;


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.AdverseOutcomes_CID3413;
import cdac.medinfo.sdk.dcm30_04.templates.cid.PatientStatusAndEvents_CID3402;
import cdac.medinfo.sdk.dcm30_04.templates.cid.ProcedureLogTitles_CID3400;
import cdac.medinfo.sdk.dcm30_04.templates.cid.StaffAction_CID3404;
import cdac.medinfo.sdk.dcm30_04.templates.cid.TypesOfLogNotes_CID3401;
import cdac.medinfo.sdk.dcm30_04.templates.enums.EnumCodingSchemeDesignator;
import cdac.medinfo.sdk.dcm30_04.templates.enums.cm.EnumCM_PatientStatusAndEvents;
import cdac.medinfo.sdk.dcm30_04.templates.enums.cm.EnumCM_ProcedureLog;
import cdac.medinfo.sdk.dcm30_04.templates.enums.cm.EnumCM_ProcedureLogTitles;
import cdac.medinfo.sdk.dcm30_04.templates.enums.cm.EnumCM_StaffAction;
import cdac.medinfo.sdk.dcm30_04.templates.enums.cm.EnumCM_TypesOfLogNotes;
import cdac.medinfo.sdk.dcm30_04.templates.enums.cv.EnumCV_ProcedureLog;
import cdac.medinfo.sdk.dcm30_04.templates.generaltemplates.ObserverContext_TID1002;
import cdac.medinfo.sdk.dcm30_04.templates.generaltemplates.Template;

/**
 * TID 3001 Procedure Log.
 * The Procedure Log template is intended for the representation of reports or logs of time-stamped events
 * occurring during an image-guided interventional or other procedure.
 */

/**
 * This class represents ProcedureLog - TID3001
 */
public class ProcedureLog_TID3001 extends Template
{
	/**
	 * Object of ProcedureLogTitles which represents the CID3400 Template. 
	 */
	private ProcedureLogTitles_CID3400 objProcedureLogTitles = null;

	/**
	 * Object of ObserverContext_TID1002 which represents the TID1002 Template. 
	 */
	private ObserverContext_TID1002 objObserverContext = null;

	/**
	 * Object of TID3601_ProcedureContext which represents the TID1002 Template. 
	 */
	private ProcedureContext_TID3601 objProcedureContext = null;

	/**
	 * Object of CID3401_TypesOfLogNotes which represents the CID3401 Template. 
	 */
	private TypesOfLogNotes_CID3401 objTypesOfLogNotes = null;

	/**
	 * Object of PatientStatusAndEvents_CID3402
	 */
	private PatientStatusAndEvents_CID3402 objPatientStatusAndEvents;

	/**
	 * Object of LogEntryQualifiers_TID3010
	 */
	private LogEntryQualifiers_TID3010 objLogEntryQualifiers;

	/**
	 * Object of StaffAction_CID3404
	 */
	private StaffAction_CID3404 objStaffAction_CID3404;

	/**
	 * Object of ProcedureAction_TID3100
	 */
	private ProcedureAction_TID3100 objProcedureAction_TID3100;

	/**
	 * Object of ImageAcquisition_TID3101
	 */
	private ImageAcquisition_TID3101 objImageAcquisition_TID3101;

	/**
	 * Object of WaveformAcquisition_TID3102
	 */
	private WaveformAcquisition_TID3102 objWaveformAcquisition_TID3102;

	/**
	 * Object of ReferencedObject_TID3103
	 */
	private ReferencedObject_TID3103 objReferencedObject_TID3103;

	/**
	 * Object of Consumables_TID3104
	 */
	private Consumables_TID3104 objConsumables_TID3104;

	/**
	 * Object of LesionIdentificationAndProperties_TID3105
	 */
	private LesionIdentificationAndProperties_TID3105 objLesionIdentificationAndProperties_TID3105;

	/**
	 * Object of LesionIdentificationAndProperties_TID3105
	 */
	private DrugsContrastAdministered_TID3106 objDrugsContrastAdministered_TID3106;

	/**
	 * Object of DeviceUsed_TID3107
	 */
	private DeviceUsed_TID3107 objDeviceUsed_TID3107;

	/**
	 * Object of Intervention_TID3108
	 */
	private Intervention_TID3108 objIntervention_TID3108;

	/**
	 * Object of Measurements_TID3109
	 */
	private Measurements_TID3109 objMeasurements_TID3109;

	/**
	 * Object of ImpressionsOrFindings_TID3110
	 */
	private ImpressionsOrFindings_TID3110 objImpressionsOrFindings_TID3110;

	/**
	 * Object of PercutaneousEntry_CID3403
	 */
	private PercutaneousEntry_TID3111 objPercutaneousEntry_TID3111;

	/**
	 * Object of SpecimenObtained_TID3112
	 */
	private SpecimenObtained_TID3112 objSpecimenObtained_TID3112;

	/**
	 * Object of PatientSupport_TID3113
	 */
	private PatientSupport_TID3113 objPatientSupport_TID3113;

	/**
	 * Object of ECGSTAssessment_TID3115
	 */
	private ECGSTAssessment_TID3115 objAssessment_TID3115;

	/**
	 * Object of PatientAssessment_TID3114
	 */
	private PatientAssessment_TID3114 objPatientAssessment_TID3114;

	/**
	 * Object of AdverseOutcomes_CID3413
	 */
	private AdverseOutcomes_CID3413 objAdverseOutcomes_CID3413;

	/**
	 * Instantiates a new TID3001_ProcedureLog Template.
	 * @param objTree Object of SRTree.
	 */
	public ProcedureLog_TID3001(SRTree objTree)
	{
		super(objTree);
	}

	/**
	 * Retrieves Observer Context 
	 * @return objObserverContext Object of ObserverContext_TID1002 
	 */
	public ObserverContext_TID1002 getObserverContext() 
	{
		if(objObserverContext == null )
			this.objObserverContext = new ObserverContext_TID1002(getSRTree());

		return this.objObserverContext;
	}

	/**
	 * Retrieves the ProcedureContext 
	 * @return objProcedureContext Object of TID3601_ProcedureContext 
	 */
	public ProcedureContext_TID3601 getProcedureContext() 
	{
		if(objProcedureContext == null )
			this.objProcedureContext = new ProcedureContext_TID3601(getSRTree());

		return this.objProcedureContext;
	}

	/**
	 * Retrieves Procedure Log Title
	 * @return Procedure Log Titles.
	 */
	public String getProcedureLogTitle()
	{
		return objProcedureLogTitles.getCodeMeaning();
	}



	/**
	 * Retrieves PatientStatusAndEvents
	 * @return objPatientStatusAndEvents Object of PatientStatusAndEvents
	 */
	public PatientStatusAndEvents_CID3402 getObjPatientStatusAndEvents() 
	{
		if(objPatientStatusAndEvents == null )
			objPatientStatusAndEvents = new PatientStatusAndEvents_CID3402();

		return this.objPatientStatusAndEvents;
	}

	/**
	 * Retrieves LogEntryQualifiers
	 * @return objLogEntryQualifiers Object of LogEntryQualifiers_TID3010
	 */
	public LogEntryQualifiers_TID3010 getLogEntryQualifiers() 
	{
		if(objLogEntryQualifiers == null )
			this.objLogEntryQualifiers = new LogEntryQualifiers_TID3010(getSRTree());

		return this.objLogEntryQualifiers;
	}

	/**
	 * Retrieves Image Acquisition 
	 * @return objImageAcquisition_TID3101 Object of ImageAcquisition_TID3101 
	 */
	public ImageAcquisition_TID3101 getImageAcquisition() 
	{
		if(objImageAcquisition_TID3101 == null )
			this.objImageAcquisition_TID3101 = new ImageAcquisition_TID3101(getSRTree());

		return this.objImageAcquisition_TID3101;
	}

	/**
	 * Retrieves Procedure Action 
	 * @return objProcedureAction_TID3100 Object of ProcedureAction_TID3100 
	 */
	public ProcedureAction_TID3100 getProcedureAction() 
	{
		if(objProcedureAction_TID3100 == null )
			this.objProcedureAction_TID3100 = new ProcedureAction_TID3100(getSRTree());

		return this.objProcedureAction_TID3100;
	}

	/**
	 * Retrieves Waveform Acquisition 
	 * @return objWaveformAcquisition_TID3102 Object of WaveformAcquisition_TID3102 
	 */
	public WaveformAcquisition_TID3102 getWaveformAcquisition() 
	{
		if(objWaveformAcquisition_TID3102 == null )
			this.objWaveformAcquisition_TID3102 = new WaveformAcquisition_TID3102(getSRTree());

		return this.objWaveformAcquisition_TID3102;
	}

	/**
	 * Retrieves ReferencedObject 
	 * @return objReferencedObject_TID3103 Object of ReferencedObject_TID3103 
	 */
	public ReferencedObject_TID3103 getReferencedObject() 
	{
		if(objReferencedObject_TID3103 == null )
			this.objReferencedObject_TID3103 = new ReferencedObject_TID3103(getSRTree());

		return this.objReferencedObject_TID3103;
	}

	/**
	 * Retrieves Lesion Identification And Properties 
	 * @return objLesionIdentificationAndProperties_TID3105 Object of LesionIdentificationAndProperties_TID3105 
	 */
	public LesionIdentificationAndProperties_TID3105 getLesionIdentificationAndProperties() 
	{
		if(objLesionIdentificationAndProperties_TID3105 == null )
			this.objLesionIdentificationAndProperties_TID3105 = new LesionIdentificationAndProperties_TID3105(getSRTree());

		return this.objLesionIdentificationAndProperties_TID3105;
	}

	/**
	 * Retrieves Consumables 
	 * @return objConsumables_TID3104 Object of Consumables_TID3104 
	 */
	public Consumables_TID3104 getConsumables() 
	{
		if(objConsumables_TID3104 == null )
			this.objConsumables_TID3104 = new Consumables_TID3104(getSRTree());

		return this.objConsumables_TID3104;
	}

	/**
	 * Retrieves DrugsContrastAdministered
	 * @return objDrugsContrastAdministered_TID3106 Object of DrugsContrastAdministered_TID3106
	 */
	public DrugsContrastAdministered_TID3106 getDrugsContrastAdministered_TID3106() 
	{
		if(objDrugsContrastAdministered_TID3106 == null )
			this.objDrugsContrastAdministered_TID3106 = new DrugsContrastAdministered_TID3106(getSRTree());

		return this.objDrugsContrastAdministered_TID3106;
	}

	/**
	 * Retrieves DeviceUsed
	 * @return objDeviceUsed_TID3107 Object of DeviceUsed_TID3107
	 */
	public DeviceUsed_TID3107 getDeviceUsed_TID3107() 
	{
		if(objDeviceUsed_TID3107 == null )
			this.objDeviceUsed_TID3107 = new DeviceUsed_TID3107(getSRTree());

		return this.objDeviceUsed_TID3107;
	}

	/**
	 * Retrieves ImpressionsOrFindings
	 * @return objImpressionsOrFindings_TID3110 Object of ImpressionsOrFindings_TID3110
	 */
	public ImpressionsOrFindings_TID3110 getImpressionsOrFindings_TID3110() 
	{
		if(objImpressionsOrFindings_TID3110 == null )
			this.objImpressionsOrFindings_TID3110 = new ImpressionsOrFindings_TID3110(getSRTree());

		return this.objImpressionsOrFindings_TID3110;
	}

	/**
	 * Retrieves Intervention
	 * @return objIntervention_TID3108 Object of Intervention_TID3108
	 */
	public Intervention_TID3108 getIntervention_TID3108() 
	{
		if(objIntervention_TID3108 == null )
			this.objIntervention_TID3108 = new Intervention_TID3108(getSRTree());

		return this.objIntervention_TID3108;
	}

	/**
	 * Retrieves Measurements
	 * @return objMeasurements_TID3109 Object of Measurements_TID3109
	 */
	public Measurements_TID3109 getMeasurements_TID3109() 
	{
		if(objMeasurements_TID3109 == null )
			this.objMeasurements_TID3109 = new Measurements_TID3109(getSRTree());

		return this.objMeasurements_TID3109;
	}

	/**
	 * Retrieves PatientSupport
	 * @return objPatientSupport_TID3113 Object of PatientSupport_TID3113
	 */
	public PatientSupport_TID3113 getPatientSupport_TID3113() 
	{
		if(objPatientSupport_TID3113 == null )
			this.objPatientSupport_TID3113 = new PatientSupport_TID3113(getSRTree());

		return this.objPatientSupport_TID3113;
	}

	/**
	 * Retrieves PercutaneousEntry
	 * @return objPercutaneousEntry_CID3403 Object of PercutaneousEntry_CID3403
	 */
	public PercutaneousEntry_TID3111 getPercutaneousEntry_TID3111() 
	{
		if(objPercutaneousEntry_TID3111 == null )
			this.objPercutaneousEntry_TID3111 = new PercutaneousEntry_TID3111(getSRTree());

		return this.objPercutaneousEntry_TID3111;
	}

	/**
	 * Retrieves SpecimenObtained
	 * @return objSpecimenObtained_TID3112 Object of SpecimenObtained_TID3112
	 */
	public SpecimenObtained_TID3112 getSpecimenObtained_TID3112() 
	{
		if(objSpecimenObtained_TID3112 == null )
			this.objSpecimenObtained_TID3112 = new SpecimenObtained_TID3112(getSRTree());

		return this.objSpecimenObtained_TID3112;
	}

	/**
	 * Retrieves ECGSTAssessment
	 * @return objAssessment_TID3115 Object of ECGSTAssessment_TID3115
	 */
	public ECGSTAssessment_TID3115 getAssessment_TID3115() 
	{
		if(objAssessment_TID3115 == null )
			this.objAssessment_TID3115 = new ECGSTAssessment_TID3115(getSRTree());

		return this.objAssessment_TID3115;
	}

	/**
	 * Retrieves Patient Assessment
	 * @return objPatientAssessment_TID3114 Object of PatientAssessment_TID3114
	 */
	public PatientAssessment_TID3114 getPatientAssessment_TID3114() 
	{
		if(objPatientAssessment_TID3114 == null )
			this.objPatientAssessment_TID3114 = new PatientAssessment_TID3114(getSRTree());

		return this.objPatientAssessment_TID3114;
	}

	/**
	 * Sets the Procedure Log Title.
	 * @param enumProcedureLogTitles object of EnumCM_ProcedureLogTitles
	 * @param enumContinuityOfContent object of EnumContinuityOfContent
	 */	
	public void setProcedureLogTitle(EnumCM_ProcedureLogTitles enumProcedureLogTitles, EnumContinuityOfContent enumContinuityOfContent)
	{
		if(objProcedureLogTitles == null )
			objProcedureLogTitles = new ProcedureLogTitles_CID3400();

		objProcedureLogTitles.setProcedureLogTitles(enumProcedureLogTitles);

		// get string values for all
		String strCodeMeaning = objProcedureLogTitles.getCodeMeaning();
		String strCodeValue = objProcedureLogTitles.getCodeValue();
		String strCodeSchemeDesignator = objProcedureLogTitles.getCodingSchemeDesignator();

		SRDocumentContentModule objDocumentContentModule = getSRTree().getSRDocumentContentModule();
		getSRTree().createRoot(objDocumentContentModule,strCodeMeaning,strCodeValue , strCodeSchemeDesignator, enumContinuityOfContent);
	}

	/**
	 * Sets the value for RoomIdentification
	 * @param arrPosition Identifier which shows the position of the node in the SR Tree.
	 * @param strRoomIdentification String value for RoomIdentification.
	 */
	public void setRoomIdentification(int[] arrPosition, String strRoomIdentification)
	{
		/**
		 * Retrieves the corresponding values of CodeMeaning,CodeValue and CodingSchemeDesignator.
		 */
		String strCodeMeaning = EnumCM_ProcedureLog.ROOM_IDENTIFICATION.getValue();
		String strCodeValue = EnumCV_ProcedureLog.ROOM_IDENTIFICATION_121121.getValue();
		String strCSD = EnumCodingSchemeDesignator.DCM.getValue();

		/**
		 * Creating a node of Value Type TEXT and adding this node at specified identifier in the SR Tree.
		 */
		ContentSequenceItem objContentSequenceItem = getSRTree().createTextNode(arrPosition, strCodeMeaning, strCodeValue, strCSD, strRoomIdentification);
		getSRTree().addChild(objContentSequenceItem);
	}

	/**
	 * Sets the value for EquipmentIdentification
	 * @param arrPosition Identifier which shows the position of the node in the SR Tree.
	 * @param strEquipmentIdentification String value for EquipmentIdentification.
	 */
	public void setEquipmentIdentification(int[] arrPosition, String strEquipmentIdentification)
	{
		/**
		 * Retrieves the corresponding values of CodeMeaning,CodeValue and CodingSchemeDesignator.
		 */
		String strCodeMeaning = EnumCM_ProcedureLog.EQUIPMENT_IDENTIFICATION.getValue();
		String strCodeValue = EnumCV_ProcedureLog.EQUIPMENT_IDENTIFICATION_121122.getValue();
		String strCSD = EnumCodingSchemeDesignator.DCM.getValue();

		/**
		 * Creating a node of Value Type TEXT and adding this node at specified identifier in the SR Tree.
		 */
		ContentSequenceItem objContentSequenceItem = getSRTree().createTextNode(arrPosition, strCodeMeaning, strCodeValue, strCSD, strEquipmentIdentification);
		getSRTree().addChild(objContentSequenceItem);
	}

	/**
	 * Sets the value for TypesOfLogNotes
	 * @param arrPosition Identifier which shows the position of the node in the SR Tree.
	 * @param enumTypesOfLogNotes Enum for TypesOfLogNotes
	 * @param strNote Value for Note
	 */
	public void setTypesOfLogNotes(int[] arrPosition, EnumCM_TypesOfLogNotes enumTypesOfLogNotes, String strNote)
	{
		if(objTypesOfLogNotes == null )
			this.objTypesOfLogNotes = new TypesOfLogNotes_CID3401();

		objTypesOfLogNotes.setTypesOfLogNotes(enumTypesOfLogNotes);

		/**
		 * Retrieves the corresponding values of CodeMeaning,CodeValue and CodingSchemeDesignator.
		 */
		String strCodeMeaning = objTypesOfLogNotes.getCodeMeaning();
		String strCodeValue = objTypesOfLogNotes.getCodeValue();
		String strCSD = objTypesOfLogNotes.getCodingSchemeDesignator();

		/**
		 * Creating a node of Value Type TEXT and adding this node at specified identifier in the SR Tree.
		 */
		ContentSequenceItem objContentSequenceItem = getSRTree().createTextNode(arrPosition, strCodeMeaning, strCodeValue, strCSD, strNote);

		getSRTree().addChild(objContentSequenceItem);
	}



	/**
	 * Sets the value for Patient Status or Event.
	 * @param arrPosition Identifier which shows the position of the node in the SR Tree.
	 * @param enumPatientStatusAndEvents value for PatientStatusAndEvents
	 * @param strCodingSchemeVersionForCode CodingSchemeVersion 
	 */
	public void setStatusOrEvent(int[] arrPosition, EnumCM_PatientStatusAndEvents enumPatientStatusAndEvents,String strCodingSchemeVersionForCode)
	{
		/**
		 * Sets the value for Patient Status And Events which follows the template CID3402
		 */
		if(objPatientStatusAndEvents == null )
			this.objPatientStatusAndEvents = new PatientStatusAndEvents_CID3402();

		this.objPatientStatusAndEvents.setPatientStatusAndEvents(enumPatientStatusAndEvents);

		/**
		 * Retrieves the corresponding values of CodeMeaning,CodeValue and CodingSchemeDesignator.
		 */
		String strCM = objPatientStatusAndEvents.getCodeMeaning();
		String strCV = objPatientStatusAndEvents.getCodeValue();
		String strCSD1 = objPatientStatusAndEvents.getCodingSchemeDesignator();

		/**
		 * Retrieves the corresponding values of CodeMeaning,CodeValue and CodingSchemeDesignator.
		 */
		String strCodeMeaning = EnumCM_ProcedureLog.PATIENT_STATUS_OF_EVENT.getValue();
		String strCodeValue = EnumCV_ProcedureLog.PATIENT_STATUS_OR_EVENT_121123.getValue();
		String strCSD2 = 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 , strCSD2, strCV, strCSD1, strCodingSchemeVersionForCode, strCM);
		getSRTree().addChild(objContentSequenceItem);
	}

	/**
	 * Sets the value for StaffAction
	 * @param arrPosition Identifier which shows the position of the node in the SR Tree.
	 * @param enumStaffActions Enum for StaffAction
	 * @param strPname Value for Note
	 */
	public void setStaffAction(int[] arrPosition, EnumCM_StaffAction enumStaffAction, String strPname)
	{
		if(objStaffAction_CID3404 == null )
			this.objStaffAction_CID3404 = new StaffAction_CID3404();

		objStaffAction_CID3404.setStaffAction(enumStaffAction);

		/**
		 * Retrieves the corresponding values of CodeMeaning,CodeValue and CodingSchemeDesignator.
		 */
		String strCodeMeaning = objStaffAction_CID3404.getCodeMeaning();
		String strCodeValue = objStaffAction_CID3404.getCodeValue();
		String strCSD = EnumCodingSchemeDesignator.DCM.getValue();

		/**
		 * Creating a node of Value Type TEXT and adding this node at specified identifier in the SR Tree.
		 */
		ContentSequenceItem objContentSequenceItem = getSRTree().createPnameNode(arrPosition, strCodeMeaning, strCodeValue, strCSD, strPname);

		getSRTree().addChild(objContentSequenceItem);
	}

	/**
	 * Sets value for Complication of Procedure.
	 * @param arrPosition Identifier which shows the position of the node in the SR Tree.
	 * @param enumValue This value can be one of the three Enum - EnumVascularComplications, EnumCM_AdverseOutcomes,
	 * or EnumCM_CathComplications.
	 */
	public void setComplicationOfProcedure(int[] arrPosition, Enum enumValue)
	{
		/**
		 * Retrieves the corresponding values of CodeMeaning,CodeValue and CodingSchemeDesignator.
		 */
		String strCodeMeaning = EnumCM_ProcedureLog.COMPLICATION_OF_PROCEDURE.getValue();
		String strCodeValue = EnumCV_ProcedureLog.COMPLICATION_OF_PROCEDURE_DD_60002.getValue();
		String strCSDesg = EnumCodingSchemeDesignator.SRT.getValue();

		/**
		 * Setting value for Arterial Lesion Location
		 */
		if(objAdverseOutcomes_CID3413 == null )
			this.objAdverseOutcomes_CID3413 = new AdverseOutcomes_CID3413();

		this.objAdverseOutcomes_CID3413.setAdverseOutcomes(enumValue);

		String strCM = objAdverseOutcomes_CID3413.getCodeMeaning();
		String strCV = objAdverseOutcomes_CID3413.getCodeValue();
		String strCSD = objAdverseOutcomes_CID3413.getCodingSchemeDesignator();
		String strCSV = objAdverseOutcomes_CID3413.getCodingSchemeVersion();
		String strSNMDCTID = objAdverseOutcomes_CID3413.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, strCSDesg, strCV, strCSD, strCSV, strCM,strSNMDCTID);
		getSRTree().addChild(objContentSequenceItem);
	}
}
