public void SetUp()
        {
            //
            // CREATE THE STACK.
            //
            List <ActivityPoint> ActivityPointList = new List <ActivityPoint>();

            //
            // CREATE THE MARKER START POINT.
            //
            ActivityPoint CreatedPoint = new ActivityPoint();

            CreatedPoint.ActivityName  = "Marker";
            CreatedPoint.PointDateTime = DateTime.UtcNow;
            CreatedPoint.PointType     = ActivityPointType.Start;
            ActivityPointList.Add(CreatedPoint);

            //
            // NORMALIZE.
            //
            ActivityPointStack CreatedStack = ActivityPointListNormalizer.Normalize(ActivityPointList.ToArray());

            //
            // GET THE START AND END POINTS.
            //
            _StartPoint = CreatedStack.Pop();
            _EndPoint   = CreatedStack.Pop();
        }
        public static string CreateLines(ActivityPointStack StackParam)
        {
            ActivityPointStack TempStack = new ActivityPointStack();

            try
            {
                StringBuilder PrintStringBuilder = new StringBuilder();
                PrintStringBuilder.AppendLine("ActivityName,PointDateTime,PointType,SequenceNumber");

                while (StackParam.IsNotEmpty)
                {
                    ActivityPoint CurrentPoint = StackParam.Pop();
                    PrintStringBuilder.AppendLine(CreateLine(CurrentPoint));
                    TempStack.Push(CurrentPoint);
                }

                return(PrintStringBuilder.ToString());
            }
            finally
            {
                while (TempStack.IsNotEmpty)
                {
                    StackParam.Push(TempStack.Pop());
                }
            }
        }