/**
  * Patients who ahve been marked as dead in discontinuation forms but NOT YET deceased
  *
  * @return cohort definition
  */
 public CohortDefinition markedAsDeadButNotDeceased() {
   CalculationCohortDefinition cd =
       new CalculationCohortDefinition(new RecordedDeceasedCalculation());
   cd.setName("marked as dead patients on date");
   cd.addParameter(new Parameter("onDate", "On Date", Date.class));
   return cd;
 }
 /**
  * Patients who are in the specified program on ${onDate}
  *
  * @param program the program
  * @return
  */
 public CohortDefinition inProgram(Program program) {
   CalculationCohortDefinition cd = new CalculationCohortDefinition(new InProgramCalculation());
   cd.setName("in " + program.getName() + " on date");
   cd.addParameter(new Parameter("onDate", "On Date", Date.class));
   cd.addCalculationParameter("program", program);
   return cd;
 }
 /**
  * Patients who are Deceased
  *
  * @return the cohort definition
  */
 public CohortDefinition deceasedPatients() {
   CalculationCohortDefinition cd =
       new CalculationCohortDefinition(new DeceasedPatientsCalculation());
   cd.setName("deceases patients on date");
   cd.addParameter(new Parameter("onDate", "On Date", Date.class));
   return cd;
 }
 /**
  * Patients who are pregnant on ${onDate}
  *
  * @return the cohort definition
  */
 public CohortDefinition pregnant() {
   CalculationCohortDefinition cd =
       new CalculationCohortDefinition(new OnAlternateFirstLineArtCalculation());
   cd.setName("pregnant on date");
   cd.addParameter(new Parameter("onDate", "On Date", Date.class));
   return cd;
 }