Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Core / CSharp / System / Windows / Media3D / Matrix3DStack.cs / 1305600 / Matrix3DStack.cs
//---------------------------------------------------------------------------- // //// Copyright (c) Microsoft Corporation. All rights reserved. // // // Description: This is a super simple Matrix3DStack implementation. // MatrixStack (2D) is optimized to avoid boxig and copying // of structs. This was written as a stop-gap to address // a bug until we can use CodeGen here. // // History: // 1/19/2004 : [....] - Created // //--------------------------------------------------------------------------- using System; using System.Collections; using System.Collections.Generic; namespace System.Windows.Media.Media3D { // internal class Matrix3DStack { //----------------------------------------------------- // // Constructors // //----------------------------------------------------- //------------------------------------------------------ // // Public Methods // //----------------------------------------------------- public void Clear() { _stack.Clear(); } public Matrix3D Pop() { Matrix3D top = Top; _stack.RemoveAt(_stack.Count - 1); return top; } ////// Empty => [matrix] /// tail | [top] => tail | [top] | [matrix * top] /// public void Push(Matrix3D matrix) { if (_stack.Count > 0) { matrix.Append(Top); } _stack.Add(matrix); } //------------------------------------------------------ // // Public Properties // //------------------------------------------------------ public int Count { get { return _stack.Count; } } public bool IsEmpty { get { return (_stack.Count == 0); } } public Matrix3D Top { get { return _stack[_stack.Count - 1]; } } //----------------------------------------------------- // // Public Events // //------------------------------------------------------ //----------------------------------------------------- // // Private Fields // //----------------------------------------------------- #region Private Fields private readonly List_stack = new List (); #endregion Private Fields } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Query.cs
- UpDownEvent.cs
- ObfuscateAssemblyAttribute.cs
- RadioButtonFlatAdapter.cs
- RangeContentEnumerator.cs
- XPathNodeList.cs
- SqlStream.cs
- KeyFrames.cs
- Animatable.cs
- MetadataCollection.cs
- MatrixCamera.cs
- WaitHandle.cs
- ProxyWebPart.cs
- TextModifierScope.cs
- XLinq.cs
- CheckBoxList.cs
- SystemBrushes.cs
- RuleSetDialog.Designer.cs
- TimeSpanConverter.cs
- InstanceKey.cs
- CssTextWriter.cs
- BamlRecordReader.cs
- AssociationSetMetadata.cs
- MsmqElementBase.cs
- Identifier.cs
- DoubleAnimationBase.cs
- TTSVoice.cs
- RegexRunnerFactory.cs
- HideDisabledControlAdapter.cs
- DocumentOrderQuery.cs
- BidOverLoads.cs
- XmlParserContext.cs
- TakeOrSkipWhileQueryOperator.cs
- RangeBaseAutomationPeer.cs
- DataGridItem.cs
- ActivityDesigner.cs
- TextCompositionEventArgs.cs
- DataServiceResponse.cs
- CodeDirectoryCompiler.cs
- DisableDpiAwarenessAttribute.cs
- Socket.cs
- XmlRawWriter.cs
- InlineUIContainer.cs
- XmlSerializerFactory.cs
- Publisher.cs
- PropertyEmitterBase.cs
- MetabaseServerConfig.cs
- LineSegment.cs
- TdsParserHelperClasses.cs
- DictionaryBase.cs
- MenuItem.cs
- SmiContextFactory.cs
- UserControlAutomationPeer.cs
- SqlClientWrapperSmiStream.cs
- CommunicationException.cs
- Privilege.cs
- Message.cs
- Psha1DerivedKeyGenerator.cs
- ViewBox.cs
- WebScriptEnablingElement.cs
- TrackingRecord.cs
- ColumnCollection.cs
- KeyValuePairs.cs
- FormViewInsertedEventArgs.cs
- VisualTreeUtils.cs
- DragDrop.cs
- TableProviderWrapper.cs
- SqlErrorCollection.cs
- MouseOverProperty.cs
- ExpressionTable.cs
- XmlNamespaceMappingCollection.cs
- LabelAutomationPeer.cs
- TreeView.cs
- TiffBitmapEncoder.cs
- VerificationException.cs
- BinaryMessageEncoder.cs
- ConfigurationLocationCollection.cs
- WS2007FederationHttpBindingElement.cs
- DbException.cs
- TextServicesManager.cs
- MediaContextNotificationWindow.cs
- ViewGenerator.cs
- FillRuleValidation.cs
- BinaryReader.cs
- AstTree.cs
- SchemaEntity.cs
- UdpChannelFactory.cs
- MachineKeySection.cs
- PenThreadPool.cs
- RelationshipType.cs
- ButtonRenderer.cs
- FixedPage.cs
- QilLiteral.cs
- PolyLineSegmentFigureLogic.cs
- DomainLiteralReader.cs
- DataGridViewRowPrePaintEventArgs.cs
- ProgressBar.cs
- DetailsViewPagerRow.cs
- Opcode.cs
- TypeTypeConverter.cs