     tree = new TraceTree(
       @treeIdCount++,
       @getNewTreeColor(),
-      "Tree#{('00'+(@treeIdCount-1)).slice(-3)}",
+      @TREE_PREFIX + ('00'+(@treeIdCount-1)).slice(-3),
       (new Date()).getTime())
     @trees.push(tree)
     @activeTree = tree

      @activeTree
    } = tracingParser.parse()

    # Initialize tree colors
    @colorIdCounter = @treeIdCount

    for tree in @trees
      unless tree.color?
        @shuffleTreeColor(tree)

    # ensure a tree is active
    unless @activeTree
      if @trees.length > 0
        @activeTree = @trees[0]
      else
        @createNewTree()

    tracingType = tracing.typ
    if (tracingType == "Task") and @getNodeListOfAllTrees().length == 0
      @addNode(tracing.content.editPosition, tracing.content.editRotation, 0, 0, 4, false)



      if @firstEdgeDirection
        @flycam.setSpaceDirection(@firstEdgeDirection)


  initializeTrees : (tracingType, taskId) ->

    # Initialize tree colors
    @colorIdCounter = @treeIdCount

    # Initialize tree name prefix
    @TREE_PREFIX = @generateTreeNamePrefix(tracingType, taskId)

    for tree in @trees
      unless tree.color?
        @shuffleTreeColor(tree)

    # Ensure a tree is active
    unless @activeTree
      if @trees.length > 0
        @activeTree = @trees[0]
      else
        @createNewTree()


  benchmark : (numberOfTrees = 1, numberOfNodesPerTree = 10000) ->
