Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / Net / System / Net / _BufferOffsetSize.cs / 1 / _BufferOffsetSize.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Net { // // this class is used by the BeginMultipleSend() API // to allow a user to send multiple buffers on a socket // internal class BufferOffsetSize { // // internal members // internal byte[] Buffer; internal int Offset; internal int Size; internal BufferOffsetSize(byte[] buffer, int offset, int size, bool copyBuffer) { GlobalLog.Assert(buffer != null && buffer.Length >= size + offset, "BufferOffsetSize::.ctor|Illegal parameters."); if (copyBuffer) { byte[] newBuffer = new byte[size]; System.Buffer.BlockCopy( buffer, // src offset, // src index newBuffer, // dest 0, // dest index size ); // total size to copy offset = 0; buffer = newBuffer; } Buffer = buffer; Offset = offset; Size = size; GlobalLog.Print("BufferOffsetSize#" + ValidationHelper.HashString(this) + "::.ctor() copyBuffer:" + copyBuffer.ToString() + " this:[" + ToString() + "]"); } /* // Consider removing. internal BufferOffsetSize(byte[] buffer, int offset, bool copyBuffer) : this(buffer, offset, buffer.Length - offset, copyBuffer) { } */ /* // Consider removing. internal BufferOffsetSize(int size, byte[] buffer, bool copyBuffer) : this(buffer, 0, size, copyBuffer) { } */ internal BufferOffsetSize(byte[] buffer, bool copyBuffer) : this(buffer, 0, buffer.Length, copyBuffer) { } #if TRAVE public override string ToString() { return "BufferOffsetSize#" + ValidationHelper.HashString(this) + " Buffer#" + ValidationHelper.HashString(Buffer) + " Offset:" + Offset.ToString() + " Size:" + Size.ToString(); } #endif } // class BufferOffsetSize } // namespace System.Net // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Net { // // this class is used by the BeginMultipleSend() API // to allow a user to send multiple buffers on a socket // internal class BufferOffsetSize { // // internal members // internal byte[] Buffer; internal int Offset; internal int Size; internal BufferOffsetSize(byte[] buffer, int offset, int size, bool copyBuffer) { GlobalLog.Assert(buffer != null && buffer.Length >= size + offset, "BufferOffsetSize::.ctor|Illegal parameters."); if (copyBuffer) { byte[] newBuffer = new byte[size]; System.Buffer.BlockCopy( buffer, // src offset, // src index newBuffer, // dest 0, // dest index size ); // total size to copy offset = 0; buffer = newBuffer; } Buffer = buffer; Offset = offset; Size = size; GlobalLog.Print("BufferOffsetSize#" + ValidationHelper.HashString(this) + "::.ctor() copyBuffer:" + copyBuffer.ToString() + " this:[" + ToString() + "]"); } /* // Consider removing. internal BufferOffsetSize(byte[] buffer, int offset, bool copyBuffer) : this(buffer, offset, buffer.Length - offset, copyBuffer) { } */ /* // Consider removing. internal BufferOffsetSize(int size, byte[] buffer, bool copyBuffer) : this(buffer, 0, size, copyBuffer) { } */ internal BufferOffsetSize(byte[] buffer, bool copyBuffer) : this(buffer, 0, buffer.Length, copyBuffer) { } #if TRAVE public override string ToString() { return "BufferOffsetSize#" + ValidationHelper.HashString(this) + " Buffer#" + ValidationHelper.HashString(Buffer) + " Offset:" + Offset.ToString() + " Size:" + Size.ToString(); } #endif } // class BufferOffsetSize } // namespace System.Net // 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
- EllipseGeometry.cs
- XmlElementList.cs
- TextComposition.cs
- altserialization.cs
- WpfSharedXamlSchemaContext.cs
- BitmapEffectInput.cs
- RowSpanVector.cs
- SpeechEvent.cs
- ProviderConnectionPointCollection.cs
- TextPenaltyModule.cs
- DataListItem.cs
- EventMappingSettings.cs
- ToolStripPanelCell.cs
- MessagePartDescriptionCollection.cs
- SerializableAttribute.cs
- HeaderElement.cs
- AllMembershipCondition.cs
- Wildcard.cs
- HttpCacheParams.cs
- ChtmlTextWriter.cs
- AssertSection.cs
- SiteMapNodeCollection.cs
- VisualTreeFlattener.cs
- MappingModelBuildProvider.cs
- QueueProcessor.cs
- WsdlInspector.cs
- SymLanguageVendor.cs
- Int32CAMarshaler.cs
- RemoveStoryboard.cs
- ReachIDocumentPaginatorSerializerAsync.cs
- SqlDataSourceCustomCommandPanel.cs
- NativeWindow.cs
- wpf-etw.cs
- PerformanceCounterPermission.cs
- SiteMapDataSourceView.cs
- XmlDocument.cs
- StateManagedCollection.cs
- EditorPartCollection.cs
- StaticContext.cs
- PropertyPath.cs
- PartialCachingAttribute.cs
- SettingsPropertyCollection.cs
- UniqueID.cs
- DisplayMemberTemplateSelector.cs
- FontStyle.cs
- EpmSyndicationContentDeSerializer.cs
- WebPartDeleteVerb.cs
- InstanceDataCollectionCollection.cs
- XsltContext.cs
- CookieParameter.cs
- DocumentReferenceCollection.cs
- TextTreeTextBlock.cs
- SerializableAttribute.cs
- TextChangedEventArgs.cs
- BamlTreeNode.cs
- ApplicationServiceHelper.cs
- DrawingGroup.cs
- PeerResolverElement.cs
- ClientRuntimeConfig.cs
- altserialization.cs
- AnimationStorage.cs
- EntryPointNotFoundException.cs
- ColumnHeader.cs
- CodeTypeReferenceCollection.cs
- CompositeCollectionView.cs
- WebBaseEventKeyComparer.cs
- SoapReflectionImporter.cs
- PopOutPanel.cs
- ExpandCollapsePattern.cs
- SQLBinary.cs
- TextBoxBase.cs
- PrivilegedConfigurationManager.cs
- Int16KeyFrameCollection.cs
- ThreadAttributes.cs
- WebPartAddingEventArgs.cs
- Matrix3DValueSerializer.cs
- Converter.cs
- OleDbError.cs
- Compensate.cs
- MappingModelBuildProvider.cs
- TargetControlTypeAttribute.cs
- HttpRequestCacheValidator.cs
- MediaPlayer.cs
- ProfileService.cs
- ComplexBindingPropertiesAttribute.cs
- ZoomPercentageConverter.cs
- ObjectAnimationBase.cs
- TextBox.cs
- IPGlobalProperties.cs
- DbConnectionOptions.cs
- XpsPackagingPolicy.cs
- WebEventCodes.cs
- Storyboard.cs
- EntityAdapter.cs
- X509Extension.cs
- DataGridViewLinkColumn.cs
- Int32Animation.cs
- ThaiBuddhistCalendar.cs
- FlowLayoutSettings.cs
- ExtractorMetadata.cs