Class ProjectInstanceGroup

java.lang.Object
mgui.interfaces.AbstractInterfaceObject
mgui.interfaces.projects.ProjectInstanceGroup
All Implemented Interfaces:
java.lang.Comparable<ProjectInstanceGroup>, InterfaceObject, NamedObject, TreeObject, CleanableObject

public class ProjectInstanceGroup
extends AbstractInterfaceObject
implements java.lang.Comparable<ProjectInstanceGroup>
Represents a group partition in a project, which refers to a set of subdirectories within the instances directory, each representing a different level of the group. As an example, if a clinical trial is examining differences between patients and controls, this can be organized by specifying an instance group named "Experimental Group", having two levels: "Patient" and "Control", mapping to two directories in the instances directory called "patient" and "control".

An arbitrary number of groups can be specified, sorted by their depth in the directory tree. For instance, to subdivide each experimental group by gender, a second group called "Gender" can be created, with the levels "Male" and "Female". This will create two subdirectories "male" and "female" within each "Experimental Group" directory. Thus:

-> instance_dir
----> patient
---------> male
---------> female
----> control
---------> male
---------> female

Since:
1.0
Version:
1.0
Author:
Andrew Reid
  • Field Details

    • levels

      protected java.util.ArrayList<java.lang.String> levels
  • Constructor Details

    • ProjectInstanceGroup

      public ProjectInstanceGroup​(java.lang.String name, java.util.ArrayList<java.lang.String> levels)
      Constructs a new instance group, and a list of levels.
      Parameters:
      name -
      levels -
  • Method Details

    • getLevels

      public java.util.ArrayList<java.lang.String> getLevels()
    • setLevels

      public void setLevels​(java.util.ArrayList<java.lang.String> levels)
    • compareTo

      public int compareTo​(ProjectInstanceGroup group)
      Specified by:
      compareTo in interface java.lang.Comparable<ProjectInstanceGroup>