private void _given(AlignmentEntityType entityType) { m_RequestedEntityType = entityType; }
/// <summary> /// Factory method that creates the correct wrapper for a specified /// entity type. /// </summary> /// <remarks> /// This method was provided to be able to test the correct wrapper /// class is created for all supported entity types. Users should /// not call this method directly because it returns an empty /// wrapper. Instead, users should call WrapEntity(), which /// initializes the wrapper after is created. /// </remarks> /// <param name="type"></param> /// <returns></returns> internal static AAlignmentEntity CreateWrapper(AlignmentEntityType type) { switch (type) { case AlignmentEntityType.Line: return(new AlignmentEntityLine()); case AlignmentEntityType.Arc: return(new AlignmentEntityCurve()); case AlignmentEntityType.Spiral: return(new AlignmentEntitySpiral()); case AlignmentEntityType.SpiralCurveSpiral: return(new AlignmentEntitySCS()); case AlignmentEntityType.SpiralLineSpiral: return(new AlignmentEntitySLS()); case AlignmentEntityType.SpiralLine: return(new AlignmentEntitySL()); case AlignmentEntityType.LineSpiral: return(new AlignmentEntityLS()); case AlignmentEntityType.SpiralCurve: return(new AlignmentEntitySC()); case AlignmentEntityType.CurveSpiral: return(new AlignmentEntityCS()); case AlignmentEntityType.SpiralSpiralCurveSpiralSpiral: return(new AlignmentEntitySSCSS()); case AlignmentEntityType.SpiralCurveSpiralCurveSpiral: return(new AlignmentEntitySCSCS()); case AlignmentEntityType.SpiralCurveSpiralSpiralCurveSpiral: return(new AlignmentEntitySCSSCS()); case AlignmentEntityType.SpiralSpiral: return(new AlignmentEntitySS()); case AlignmentEntityType.SpiralSpiralCurve: return(new AlignmentEntitySSC()); case AlignmentEntityType.CurveSpiralSpiral: return(new AlignmentEntityCSS()); // Not used for now. // case AlignmentEntityType.MultipleSegments: // case AlignmentEntityType.CurveLineCurve: return(new AlignmentEntityCLC()); case AlignmentEntityType.CurveReverseCurve: return(new AlignmentEntityCRC()); case AlignmentEntityType.CurveCurveReverseCurve: return(new AlignmentEntityCCRC()); default: throw new NotImplementedException( "Specified entity wrapper not implemented."); } }