#include "Behaviors/StateMachine.h"

$nodeclass LocalMapDemo : VisualRoutinesStateNode {

  $nodeclass BuildMap : MapBuilderNode($,MapBuilderRequest::localMap) : doStart {

    NEW_SHAPE(gazePt, PointData, new PointData(localShS,Point(400,0,-100,egocentric)));
    mapreq.maxDist = 1500;
    mapreq.motionSettleTime = 2000;

    mapreq.addObjectColor(lineDataType, "pink");
    mapreq.addOccluderColor(lineDataType, "blue");
    mapreq.addOccluderColor(lineDataType, "pink");
    mapreq.addOccluderColor(lineDataType, "green");
    mapreq.addOccluderColor(lineDataType, "orange");

    mapreq.addObjectColor(ellipseDataType,"blue");
    mapreq.addObjectColor(ellipseDataType,"yellow");
    mapreq.addObjectColor(ellipseDataType,"green");
  }

  $nodeclass ExamineMap : SoundNode($, "barklow.wav") : doStart {
    cout << "MapBuilder found " << localShS.allShapes().size() << " shapes." << endl;
  }

  $setupmachine{
    BuildMap =MAP=> ExamineMap
  }

}

REGISTER_BEHAVIOR(LocalMapDemo);
