code: protected double receivePoint(LofPoint recievedPoint, LofDataSet dataSet)
      {
          // 現在保持している学習データ数
          int dataCount = dataSet.getDataIdList().size();
  
          // データが最小数に満たない場合はデータの追加のみを行い、LOF値は0.0として扱う
          if (dataCount < this.minDataCount)
          {
              addDataWithoutCalculate(recievedPoint, dataSet);
              return 0.0d;
          }
  
          double lofScore = 0.0d;
  
          if (this.alwaysUpdateModel || dataSet.getDataIdList().size() < this.maxDataCount
                  || (this.receiveCount % this.updateInterval) == 0)
          {
              // 以下の条件を満たす場合、学習データモデルの更新、及びLOF値の算出を行う。
              // 1. 「データ受信時、常時学習データモデルを更新」がtrue
              // 2. 学習データモデルの保持するデータ数が最大保持数未満の場合
              // 3. 受信データ数 % 学習データモデル更新間隔 = 0
              lofScore = calculateLofWithUpdate(recievedPoint, dataSet);
          }
          else
          {
              // 上記の条件をいずれも満たさない場合、スコアの算出のみを行う。
              lofScore = calculateLofWithoutUpdate(recievedPoint, dataSet);
          }
  
          return lofScore;
      }
docs: データを受信した時の処理を行う。<br>
  LOFスコアの算出を行う。
  
  @param recievedPoint 受信データ
  @param dataSet 学習モデルデータ
  @return 算出されたLOF値。データが最小数に満たない場合は0.0が返る。