This file is indexed.

/usr/include/InsightToolkit/Algorithms/itkBioCellBase.h is in libinsighttoolkit3-dev 3.20.1-1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
/*=========================================================================

  Program:   Insight Segmentation & Registration Toolkit
  Module:    itkBioCellBase.h
  Language:  C++
  Date:      $Date$
  Version:   $Revision$

  Copyright (c) Insight Software Consortium. All rights reserved.
  See ITKCopyright.txt or http://www.itk.org/HTML/Copyright.htm for details.

     This software is distributed WITHOUT ANY WARRANTY; without even
     the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
     PURPOSE.  See the above copyright notices for more information.

=========================================================================*/
#ifndef __itkBioCellBase_h
#define __itkBioCellBase_h

#include "itkRGBPixel.h"
#include "itkVector.h"
#include "itkPoint.h"
#include "itkBioGenome.h"

namespace itk {

namespace bio {

/** \class CellBase
 * \brief non-templated Base class from which the templated Cell classes will be derived.
 * Derived classes are instantiated for a specific space dimension.
 */
class ITK_EXPORT CellBase 
{
public:
  typedef   itk::RGBPixel<float>                ColorType;
  typedef   unsigned long int                   IdentifierType;
  typedef   itk::bio::Genome                    GenomeType;
  typedef   GenomeType::GeneIdType              GeneIdType;


  virtual ColorType GetColor(void) const;
  
  double GetRadius(void) const;
  
  IdentifierType GetSelfIdentifier(void) const;
  IdentifierType GetParentIdentifier(void) const;
 
  enum CellCycleState {
    M = 1UL,
    Gap1,
    S,
    Gap2,
    Gap0,
    Apop
  };

protected:
  CellBase();
  virtual ~CellBase();

  virtual void Grow(void);
  virtual void DNAReplication(void);
  virtual void Apoptosis(void);
  
  virtual void EnergyIntake(void);
  virtual void NutrientsIntake(void);
  virtual void ComputeGeneNetwork(void);
  virtual void SecreteProducts(void);

  virtual bool CheckPointGrowth(void);
  virtual bool CheckPointDNAReplication(void);
  virtual bool CheckPointMitosis(void);
  virtual bool CheckPointApoptosis(void);

  void MarkForRemoval(void);

  // Static Members
  static     ColorType   DefaultColor;

  static     GeneIdType  BlueGene;   // Pigment genes
  static     GeneIdType  RedGene;
  static     GeneIdType  GreenGene;
  static     GeneIdType  Cdk2E;      // cell cycle control  genes
  static     GeneIdType  Caspase;    // cleavage enzyme: apoptosis effector
  static     GeneIdType  Pressurin;  // signal from micro-tubules subject to stress


  static unsigned long   MaximumGenerationLimit;
  static unsigned long   GrowthMaximumLatencyTime;
  static unsigned long   DivisionMaximumLatencyTime;

  static     double      EnergySelfRepairLevel;
  static     double      NutrientSelfRepairLevel;

  static     double      DefaultEnergyIntake;
  static     double      DefaultNutrientsIntake;

  static     unsigned long  Counter;

  static ColorType       WellNourishedColor;
  static ColorType       HopefullColor;
  static ColorType       StarvingColor;

  static double          ChemoAttractantLowThreshold;
  static double          ChemoAttractantHighThreshold;

  GenomeType         * m_Genome;
  GenomeType         * m_GenomeCopy;

  static     double      DefaultRadius;
  static     double      GrowthRadiusLimit;
  static     double      GrowthRadiusIncrement;

public:

  virtual bool MarkedForRemoval(void) const;


  static void SetDefaultRadius( double );
  static void SetGrowthRadiusLimit( double );
  static void SetGrowthRadiusIncrement( double );
  static void SetEnergySelfRepairLevel( double );
  static void SetNutrientSelfRepairLevel( double );
  static void SetDefaultColor( const ColorType & color );

  static void SetChemoAttractantHighThreshold( double );
  static void SetChemoAttractantLowThreshold( double );

  static void SetGrowthMaximumLatencyTime( unsigned long latency );
  static unsigned long GetGrowthMaximumLatencyTime( void );

  static double GetGrowthRadiusLimit( void );
  static void SetMaximumGenerationLimit( unsigned long );

  static void SetDivisionMaximumLatencyTime( unsigned long );
  static unsigned long GetDivisionMaximumLatencyTime(void);

  static void ResetCounter(void);
  static void Initialize(void); // define values in static variables.


protected:
   double               m_Pressure;

   ColorType            m_Color;
   
   double               m_Radius;
   double               m_EnergyReserveLevel;
   double               m_NutrientsReserveLevel;

   unsigned long        m_GrowthLatencyTime;

   IdentifierType       m_ParentIdentifier;
   IdentifierType       m_SelfIdentifier;

   unsigned long        m_Generation;

   CellCycleState       m_CycleState;
   
   bool                 m_MarkedForRemoval;
   unsigned long        m_DivisionLatencyTime;

   bool                 m_ScheduleApoptosis;
   double               m_ChemoAttractantLevel;

};

} // end namespace bio

} // end namespace itk


#endif