示例#1
0
        private void btnVideoGoToFrame_Click(object sender, EventArgs e)
        {
            int FrameID;
            int FramesCount;

            if (int.TryParse(tbxVideoGoToFrame.Text, out FrameID))
            {
                picVideo.Image            = cam.GetFrame(VideoHandle, FrameID);
                tbxVideoCurrentFrame.Text = FrameID.ToString();
                FramesCount = int.Parse(tbxVideoTotalFrames.Text);
                if (FramesCount >= 2)
                {
                    pbrVideo.Value = 100 * FrameID / (FramesCount - 1);
                }
                else
                {
                    pbrVideo.Value = 100;
                }
            }
            else
            {
                MessageBox.Show("Wrong frame number!", "ERROR!",
                                MessageBoxButtons.OK);
                tbxVideoGoToFrame.Text = "";
            }
        }
示例#2
0
文件: ID3v2.cs 项目: yazici/AudioLab
 public Frame this[FrameID id]
 {
     get
     {
         return(this[FrameIDFactory2.GetID(id, Header.Version)]);
     }
 }
示例#3
0
        internal static string GetID(FrameID id, ID3Version version)
        {
            var entry = Frames.Where((x) => x.ID == id);

            if (entry != null && entry.Count() > 0)
            {
                var    e   = entry.First();
                string sid = null;
                if (version == ID3Version.ID3v2_2)
                {
                    sid = e.ID3v2ID;
                }
                else if (version == ID3Version.ID3v2_3)
                {
                    sid = e.ID3v3ID;
                }
                else if (version == ID3Version.ID3v2_4)
                {
                    sid = e.ID3v4ID;
                }
                else
                {
                    throw new InvalidOperationException(String.Format("FrameID {0} is not supported on version {1}", id, version));
                }

                if (sid == null)
                {
                    throw new InvalidOperationException(String.Format("FrameID {0} is not supported on version {1}", id, version));
                }
                return(sid);
            }

            throw new ArgumentException("Invalid FrameID: " + id.ToString());
        }
        public override bool Equals(object obj)
        {
            if (!(obj is FrameID))
            {
                return(false);
            }
            FrameID myFrameID = (FrameID)obj;

            return(this.chainIndex == myFrameID.chainIndex && this.frameIndex == myFrameID.frameIndex);
        }
示例#5
0
 public Sprite GetFrameView(FrameID frameID)
 {
     foreach (FrameInfo frameInfo in frameInfos)
     {
         if (frameInfo.frameID == frameID)
         {
             return(frameInfo.frameView);
         }
     }
     throw new System.Exception("無効なFrameIDが入力されました。");
 }
示例#6
0
 public List <string> GetNGWords(FrameID frameID)
 {
     foreach (FrameInfo frameInfo in frameInfos)
     {
         if (frameInfo.frameID == frameID)
         {
             return(frameInfo.ngWords);
         }
     }
     throw new System.Exception("無効なFrameIDが入力されました。");
 }
示例#7
0
 public SituationID GetSituation(FrameID frameID)
 {
     foreach (FrameInfo frameInfo in frameInfos)
     {
         if (frameInfo.frameID == frameID)
         {
             return(frameInfo.situationID);
         }
     }
     throw new System.Exception("無効なFrameIDが入力されました。");
 }
示例#8
0
        ///<summary>
        ///Determines whether the specified <see cref="T:HFM.Core.DataTypes.UnitFrame"></see> is equal to the current <see cref="T:HFM.Core.DataTypes.UnitFrame"></see>.
        ///</summary>
        ///<returns>
        ///true if the specified <see cref="T:HFM.Core.DataTypes.UnitFrame"></see> is equal to the current <see cref="T:HFM.Core.DataTypes.UnitFrame"></see>; otherwise, false.
        ///</returns>
        ///<param name="other">The <see cref="T:HFM.Core.DataTypes.UnitFrame"></see> to compare with the current <see cref="T:HFM.Core.DataTypes.UnitFrame"></see>.</param>
        public bool Equals(UnitFrame other)
        {
            if (other == null)
            {
                return(false);
            }

            return(FrameID.Equals(other.FrameID) &&
                   TimeOfFrame.Equals(other.TimeOfFrame) &&
                   FrameDuration.Equals(other.FrameDuration));
        }
示例#9
0
    public void OnChoiseFrame(int handIndex)
    {
        timer.TImerStop();
        choosenFrameSituation.Add(handIndex);
        FrameID frameID = GlobalHand.GetHand(currentPlayerID, handIndex);

        fourFrames.AddFrame(frameID);
        if (choosenFrameSituation.Count >= 4)
        {
            FinalizeFourFramesMaker();
            return;
        }
        currentPlayerID = PlayerIDOffset(currentPlayerID, 1);
        displayPlayerID = currentPlayerID;
        StartCoroutine("WaitTap", frameRepository.GetNGWords(frameID));
    }
示例#10
0
            public void RenderToTarget(GraphicsDevice device, IEnumerable <KeyValuePair <CompositeFrame, FrameID> > currentFrames)
            {
                if (HasChanged)
                {
                    if (Target == null || Target.IsDisposed || Target.GraphicsDevice.IsDisposed)
                    {
                        return;
                    }
                    device.SetRenderTarget(Target);
                    device.Clear(ClearOptions.Target, Color.Transparent, 1.0f, 0);
                    try
                    {
                        DwarfGame.SafeSpriteBatchBegin(SpriteSortMode.Deferred, BlendState.NonPremultiplied, SamplerState.PointClamp,
                                                       DepthStencilState.None, RasterizerState.CullNone, null, Matrix.Identity);
                        foreach (KeyValuePair <CompositeFrame, FrameID> framePair in currentFrames)
                        {
                            CompositeFrame frame         = framePair.Key;
                            FrameID        currentOffset = framePair.Value;

                            List <NamedImageFrame> images = frame.GetFrames();

                            for (int i = 0; i < images.Count; i++)
                            {
                                int y = FrameSize.Y - images[i].SourceRect.Height;
                                int x = (FrameSize.X / 2) - images[i].SourceRect.Width / 2;
                                DwarfGame.SpriteBatch.Draw(images[i].Image,
                                                           new Rectangle(currentOffset.Offset.X * FrameSize.X + x,
                                                                         currentOffset.Offset.Y * FrameSize.Y + y,
                                                                         images[i].SourceRect.Width,
                                                                         images[i].SourceRect.Height),
                                                           images[i].SourceRect,
                                                           frame.Cells[i].Tint);
                            }
                        }
                    }
                    finally
                    {
                        DwarfGame.SpriteBatch.End();
                    }
                    device.SetRenderTarget(null);
                    HasRendered = true;
                    HasChanged  = false;
                }
            }
示例#11
0
    public void AddFrame(FrameID frameID)
    {
        switch (frameRepository.GetSituation(frameID))
        {
        case SituationID.Ki:
            if (kiFrameViews.sprite == null)
            {
                kiFrameViews.sprite = blackFrame;
                frameIDs[0]         = frameID;
            }
            break;

        case SituationID.Sho:
            if (shoFrameViews.sprite == null)
            {
                shoFrameViews.sprite = blackFrame;
                frameIDs[1]          = frameID;
            }
            break;

        case SituationID.Ten:
            if (tenFrameViews.sprite == null)
            {
                tenFrameViews.sprite = blackFrame;
                frameIDs[2]          = frameID;
            }
            break;

        case SituationID.Ketsu:
            if (ketsuFrameViews.sprite == null)
            {
                ketsuFrameViews.sprite = blackFrame;
                frameIDs[3]            = frameID;
            }
            break;
        }
    }
示例#12
0
        ///<summary>
        ///Compares the current object with another object of the same type.
        ///</summary>
        ///<returns>
        ///A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has the following meanings: Value Meaning Less than zero This object is less than the other parameter.Zero This object is equal to other. Greater than zero This object is greater than other.
        ///</returns>
        ///<param name="other">An object to compare with this object.</param>
        public int CompareTo(UnitFrame other)
        {
            if (other == null)
            {
                return(1);
            }

            if (FrameID.Equals(other.FrameID))
            {
                if (TimeOfFrame.Equals(other.TimeOfFrame))
                {
                    if (FrameDuration.Equals(other.FrameDuration))
                    {
                        return(0);
                    }

                    return(FrameDuration.CompareTo(other.FrameDuration));
                }

                return(TimeOfFrame.CompareTo(other.TimeOfFrame));
            }

            return(FrameID.CompareTo(other.FrameID));
        }
示例#13
0
        internal static string GetID(FrameID id, ID3Version version)
        {
            var entry = Frames.Where((x) => x.ID == id);
            if (entry != null && entry.Count() > 0)
            {
                var e = entry.First();
                string sid = null;
                if (version == ID3Version.ID3v2_2)
                    sid = e.ID3v2ID;
                else if (version == ID3Version.ID3v2_3)
                    sid = e.ID3v3ID;
                else if (version == ID3Version.ID3v2_4)
                    sid = e.ID3v4ID;
                else
                    throw new InvalidOperationException(String.Format("FrameID {0} is not supported on version {1}", id, version));

                if (sid == null)
                    throw new InvalidOperationException(String.Format("FrameID {0} is not supported on version {1}", id, version));
                return sid;
            }

            throw new ArgumentException("Invalid FrameID: " + id.ToString());
        }
示例#14
0
    public FrameID GetFrame(FramesRoleID roleID, SituationID situationID)
    {
        FrameID retID = frameRepository.GetCurrentFramesPart(roleID, rotationIndexs[currentRotation], situationID);

        return(retID);
    }
示例#15
0
 public Rectangle GetFrameRect(FrameID frame)
 {
     return(Pages[frame.Page].GetFrameRect(frame.Offset));
 }
示例#16
0
 public Texture2D GetTarget(FrameID frame)
 {
     return(Pages[frame.Page].Target);
 }
示例#17
0
        public FrameID PushFrame(CompositeFrame frame)
        {
            foreach (var page in Pages.Where(p => p.Target.IsContentLost))
            {
                page.Initialize();
            }

            if (!CurrentFrames.ContainsKey(frame))
            {
                Point nextFreeCell = new Point(-1, -1);
                Page  page         = null;
                int   k            = -1;
                foreach (var pages in Pages)
                {
                    k++;
                    var result = pages.GetNextFreeCell(out nextFreeCell);
                    if (result != Page.AddCellResult.PageFull)
                    {
                        page = pages;
                        if (result == Page.AddCellResult.PageGrown)
                        {
                            EraseFrames(k);
                        }
                        break;
                    }
                }


                Point newFrameSize = new Point(1, 1);
                foreach (var layer in frame.Cells)
                {
                    newFrameSize = new Point(Math.Max(layer.Sheet.FrameWidth, newFrameSize.X),
                                             Math.Max(layer.Sheet.FrameHeight, newFrameSize.Y));
                }

                if (page == null)
                {
                    page = new Page()
                    {
                        TargetSizeFrames = new Point(4, 4),
                        FrameSize        = newFrameSize
                    };
                    page.Initialize();
                    Pages.Add(page);
                    page.GetNextFreeCell(out nextFreeCell);
                    k = Pages.Count - 1;
                }

                if (page.FrameSize.X < newFrameSize.X || page.FrameSize.Y < newFrameSize.Y)
                {
                    EraseFrames(k);

                    if (page.ValidateFrameSizeChange(newFrameSize))
                    {
                        page.FrameSize = newFrameSize;
                        page.Initialize();
                        page.HasChanged = true;
                    }
                    else
                    {
                        page.FrameSize = newFrameSize;
                        if (!page.Grow())
                        {
                            var newPage = new Page()
                            {
                                TargetSizeFrames = new Point(4, 4),
                                FrameSize        = newFrameSize
                            };
                            newPage.Initialize();
                            Pages.Add(newPage);
                            page = newPage;
                            newPage.GetNextFreeCell(out nextFreeCell);
                            k++;
                        }
                        else
                        {
                            page.GetNextFreeCell(out nextFreeCell);
                            EraseFrames(k);
                        }
                    }
                }

                FrameID toReturn = new FrameID(k, nextFreeCell.X, nextFreeCell.Y);
                CurrentFrames[frame] = toReturn;
                page.HasChanged      = true;
                return(toReturn);
            }
            else
            {
                return(CurrentFrames[frame]);
            }
        }
示例#18
0
        public static string GetID(FrameID frameId, ID3Version version)
        {
            if (version == ID3Version.ID3v1)
            {
                throw new ArgumentOutOfRangeException("ID3v1 does not support frames");
            }

            string id = String.Empty;

            //http://id3.org/id3v2.3.0
            switch (frameId)
            {
            case FrameID.AudioEnctryption:
                id = "AENC"; break;

            case FrameID.AttachedPicutre:
                id = "APIC"; break;

            case FrameID.Comments:
                id = "COMM"; break;

            case FrameID.CommercialFrame:
                id = "COMR"; break;

            case FrameID.EncryptionMethodRegistration:
                id = "ENCR"; break;

            case FrameID.Equalization:
                id = "EQUA"; break;

            case FrameID.EventTimeingCodes:
                id = "ETCO"; break;

            case FrameID.GeneralEncapsulatedObject:
                id = "GEOB"; break;

            case FrameID.GroupIdentificationRegistration:
                id = "GRID"; break;

            case FrameID.InvolvedPeopleList:
                if (version == ID3Version.ID3v2_4)
                {
                    id = "TIPL";
                }
                break;
                id = "IPLS"; break;

            case FrameID.LinkedInformation:
                id = "LINK"; break;

            case FrameID.MusicCDIdentifier:
                id = "MCDI"; break;

            case FrameID.MPEGLocationLookupTable:
                id = "MLLT"; break;

            case FrameID.OwnershipFrame:
                id = "OWNE"; break;

            case FrameID.PrivateFrame:
                id = "PRIV"; break;

            case FrameID.PlayCounter:
                id = "PCNT"; break;

            case FrameID.Popularimeter:
                id = "POPM"; break;

            case FrameID.PositionSynchronisationFrame:
                id = "POSS"; break;

            case FrameID.RecommendedBufferSize:
                id = "RBUF"; break;

            case FrameID.RelativeVolumeAdjustment:
                id = "RVAD"; break;

            case FrameID.Reverb:
                id = "RVRB"; break;

            case FrameID.SynchronizedLyrics:
                id = "SYLT"; break;

            case FrameID.SynchronizedTempoCodes:
                id = "SYTC"; break;

            case FrameID.Album:
                id = "TALB"; break;

            case FrameID.BeatsPerMinute:
                id = "TBPM"; break;

            case FrameID.Composer:
                id = "TCOM"; break;

            case FrameID.ContentType:
                id = "TCON"; break;

            case FrameID.CopyrightMessage:
                id = "TCOP"; break;

            case FrameID.Date:
                id = "TDAT"; break;

            case FrameID.PlaylistDelay:
                id = "TDLY"; break;

            case FrameID.EncodedBy:
                id = "TENC"; break;

            case FrameID.TextWriter:
                id = "TEXT"; break;

            case FrameID.FileType:
                id = "TFLT"; break;

            case FrameID.Time:
                id = "TIME"; break;

            case FrameID.ContentGroupDescription:
                id = "TIT1"; break;

            case FrameID.Title:
                id = "TIT2"; break;

            case FrameID.Subtitle:
                id = "TIT3"; break;

            case FrameID.InitialKey:
                id = "TKEY"; break;

            case FrameID.Languages:
                id = "TLAN"; break;

            case FrameID.Length:
                id = "TLEN"; break;

            case FrameID.MediaType:
                id = "TMED"; break;

            case FrameID.OriginalAlbum:
                id = "TOAL"; break;

            case FrameID.OriginalFileName:
                id = "TOFN"; break;

            case FrameID.OriginalTextWriter:
                id = "TOLY"; break;

            case FrameID.OriginalArtist:
                id = "TOPE"; break;

            case FrameID.OriginalReleaseYear:
                id = "TORY"; break;

            case FrameID.FileOwner:
                id = "TOWN"; break;

            case FrameID.LeadPerformers:
                id = "TPE1"; break;

            case FrameID.Band:
                id = "TPE2"; break;

            case FrameID.Conductor:
                id = "TPE3"; break;

            case FrameID.Interpreted:
                id = "TPE4"; break;

            case FrameID.PartOfASet:
                id = "TPOS"; break;

            case FrameID.Publisher:
                id = "TPUB"; break;

            case FrameID.TrackNumber:
                id = "TRCK"; break;

            case FrameID.RecordingDates:
                id = "TRDA"; break;

            case FrameID.InternetRadioStationName:
                id = "TRSN"; break;

            case FrameID.InternetRadioStationOwner:
                id = "TRSO"; break;

            case FrameID.Size:
                id = "TSIZ"; break;

            case FrameID.ISRC:
                id = "TSRC"; break;

            case FrameID.EncodingSettings:
                id = "TSSE"; break;

            case FrameID.Year:
                id = "TYER"; break;

            case FrameID.UserTextInformation:
                id = "TXXX"; break;

            case FrameID.UniqueFileIdentifier:
                id = "UFID"; break;

            case FrameID.TermsOfUse:
                id = "USER"; break;

            case FrameID.UnsynchronizedLyris:
                id = "USLT"; break;

            case FrameID.CommercialInformationURL:
                id = "WCOM"; break;

            case FrameID.CopyrightURL:
                id = "WCOP"; break;

            case FrameID.OfficialAudioFileWebpage:
                id = "WOAF"; break;

            case FrameID.OfficialArtistWebpage:
                id = "WOAR"; break;

            case FrameID.OfficialAudioSourceWebpage:
                id = "WOAS"; break;

            case FrameID.InternetRadioStationWebpage:
                id = "WORS"; break;

            case FrameID.PaymentURL:
                id = "WPAY"; break;

            case FrameID.PublishersOfficialWebpage:
                id = "WPUB"; break;

            case FrameID.UserURLLinkFrame:
                id = "WXXX"; break;

            case FrameID.MusicicanCreditsList:
                id = "TMCL"; break;

            case FrameID.Mood:
                id = "TMOO"; break;

            case FrameID.ProducedNotice:
                id = "TPRO"; break;

            case FrameID.AlbumSortOrder:
                id = "TSOA"; break;

            case FrameID.PerformerSortOrder:
                id = "TSOP"; break;

            case FrameID.TitleSortOrder:
                id = "TSOT"; break;

            case FrameID.SetSubtitle:
                id = "TSST"; break;

            default:
                throw new ArgumentOutOfRangeException("frameid", "Invalid FrameID");
            }

            if (version == ID3Version.ID3v2_2)
            {
                id = ConvertVersion3IDToVersion2(id);
            }
            return(id);
        }
示例#19
0
        private Frame GetFrame(string id, ID3Version version, FrameHeader header)
        {
            FrameID frameID = FrameIDFactory.GetFrameEntry(id, version).ID;

            switch (frameID)
            {
            case FrameID.Length:
            case FrameID.EncodedBy:    //---
            case FrameID.Album:
            case FrameID.Composer:
            case FrameID.ContentType:
            case FrameID.CopyrightMessage:
            case FrameID.TextWriter:
            case FrameID.FileType:
            case FrameID.ContentGroupDescription:
            case FrameID.Title:
            case FrameID.Subtitle:
            case FrameID.InitialKey:
            case FrameID.Languages:
            case FrameID.MediaType:
            case FrameID.OriginalAlbum:
            case FrameID.OriginalFileName:
            case FrameID.OriginalTextWriter:
            case FrameID.OriginalArtist:
            case FrameID.FileOwner:
            case FrameID.LeadPerformers:     //--
            case FrameID.Band:
            case FrameID.Conductor:
            case FrameID.Interpreted:     //remixed
            case FrameID.PartOfASet:
            case FrameID.Publisher:
            case FrameID.TrackNumber:
            case FrameID.RecordingDates:
            case FrameID.InternetRadioStationName:
            case FrameID.InternetRadioStationOwner:
            case FrameID.ISRC:
            case FrameID.EncodingSettings:
            case FrameID.MusicicanCreditsList:
            case FrameID.InvolvedPeopleList:
            case FrameID.Mood:
            case FrameID.ProducedNotice:
            case FrameID.AlbumSortOrder:
            case FrameID.PerformerSortOrder:
            case FrameID.TitleSortOrder:
            case FrameID.SetSubtitle:
                return(new MultiStringTextFrame(header)); //multistringtextframe

            case FrameID.Size:                            //---
            case FrameID.BeatsPerMinute:
            case FrameID.Date:
            case FrameID.PlaylistDelay:
            case FrameID.Time:
            case FrameID.OriginalReleaseYear:
            case FrameID.Year:
                return(new NumericTextFrame(header));    //numerictextframe

            case FrameID.RecordingTime:
            case FrameID.OriginalReleaseTime:
            case FrameID.EncodingTime:
            case FrameID.ReleaseTime:
            case FrameID.TaggingTime:
                return(new TimestampTextFrame(header));    //Timestamptextframe

            case FrameID.CommercialInformationURL:
            case FrameID.CopyrightURL:
            case FrameID.OfficialAudioFileWebpage:
            case FrameID.OfficialArtistWebpage:
            case FrameID.OfficialAudioSourceWebpage:
            case FrameID.InternetRadioStationWebpage:
            case FrameID.PaymentURL:
            case FrameID.PublishersOfficialWebpage:
                return(new TextFrame(header));    //textframe

            case FrameID.PrivateFrame:
            case FrameID.UniqueFileIdentifier:
                return(new DataFrame(header));

            case FrameID.MusicCDIdentifier:
            case FrameID.RecommendedBufferSize:     //---
            case FrameID.EncryptedMetaData:
            case FrameID.AudioSeekPointIndex:
            case FrameID.MPEGLocationLookupTable:
            case FrameID.SynchronizedTempoCodes:
            case FrameID.RelativeVolumeAdjustment:
            case FrameID.RelativeVolumeAdjustmentOld:
            case FrameID.Equalization:
            case FrameID.EqualizationOld:
                return(new BinaryFrame(header));

            case FrameID.UserTextInformation:
            case FrameID.UserURLLinkFrame:
                return(new UserDefiniedTextFrame(header));

            case FrameID.AttachedPicutre:
                return(new PictureFrame(header, version));

            case FrameID.UnsynchronizedLyris:
            case FrameID.Comments:
                return(new CommentAndLyricsFrame(header));

            case FrameID.TermsOfUse:
                return(new TermsOfUseFrame(header));

            case FrameID.OwnershipFrame:
                return(new OwnershipFrame(header));

            case FrameID.CommercialFrame:
                return(new CommercialFrame(header));

            case FrameID.Popularimeter:
                return(new Popularimeter(header));
            }
            return(null);
        }
示例#20
0
        public static string GetID(FrameID frameId, ID3Version version)
        {
            if (version == ID3Version.ID3v1)
                throw new ArgumentOutOfRangeException("ID3v1 does not support frames");

            string id = String.Empty;
            //http://id3.org/id3v2.3.0
            switch (frameId)
            {
                case FrameID.AudioEnctryption:
                    id = "AENC"; break;
                case FrameID.AttachedPicutre:
                    id = "APIC"; break;
                case FrameID.Comments:
                    id = "COMM"; break;
                case FrameID.CommercialFrame:
                    id = "COMR"; break;
                case FrameID.EncryptionMethodRegistration:
                    id = "ENCR"; break;
                case FrameID.Equalization:
                    id = "EQUA"; break;
                case FrameID.EventTimeingCodes:
                    id = "ETCO"; break;
                case FrameID.GeneralEncapsulatedObject:
                    id = "GEOB"; break;
                case FrameID.GroupIdentificationRegistration:
                    id = "GRID"; break;
                case FrameID.InvolvedPeopleList:
                    if (version == ID3Version.ID3v2_4)
                        id = "TIPL"; break;
                    id = "IPLS"; break;
                case FrameID.LinkedInformation:
                    id = "LINK"; break;
                case FrameID.MusicCDIdentifier:
                    id = "MCDI"; break;
                case FrameID.MPEGLocationLookupTable:
                    id = "MLLT"; break;
                case FrameID.OwnershipFrame:
                    id = "OWNE"; break;
                case FrameID.PrivateFrame:
                    id = "PRIV"; break;
                case FrameID.PlayCounter:
                    id = "PCNT"; break;
                case FrameID.Popularimeter:
                    id = "POPM"; break;
                case FrameID.PositionSynchronisationFrame:
                    id = "POSS"; break;
                case FrameID.RecommendedBufferSize:
                    id = "RBUF"; break;
                case FrameID.RelativeVolumeAdjustment:
                    id = "RVAD"; break;
                case FrameID.Reverb:
                    id = "RVRB"; break;
                case FrameID.SynchronizedLyrics:
                    id = "SYLT"; break;
                case FrameID.SynchronizedTempoCodes:
                    id = "SYTC"; break;
                case FrameID.Album:
                    id = "TALB"; break;
                case FrameID.BeatsPerMinute:
                    id = "TBPM"; break;
                case FrameID.Composer:
                    id = "TCOM"; break;
                case FrameID.ContentType:
                    id = "TCON"; break;
                case FrameID.CopyrightMessage:
                    id = "TCOP"; break;
                case FrameID.Date:
                    id = "TDAT"; break;
                case FrameID.PlaylistDelay:
                    id = "TDLY"; break;
                case FrameID.EncodedBy:
                    id = "TENC"; break;
                case FrameID.TextWriter:
                    id = "TEXT"; break;
                case FrameID.FileType:
                    id = "TFLT"; break;
                case FrameID.Time:
                    id = "TIME"; break;
                case FrameID.ContentGroupDescription:
                    id = "TIT1"; break;
                case FrameID.Title:
                    id = "TIT2"; break;
                case FrameID.Subtitle:
                    id = "TIT3"; break;
                case FrameID.InitialKey:
                    id = "TKEY"; break;
                case FrameID.Languages:
                    id = "TLAN"; break;
                case FrameID.Length:
                    id = "TLEN"; break;
                case FrameID.MediaType:
                    id = "TMED"; break;
                case FrameID.OriginalAlbum:
                    id = "TOAL"; break;
                case FrameID.OriginalFileName:
                    id = "TOFN"; break;
                case FrameID.OriginalTextWriter:
                    id = "TOLY"; break;
                case FrameID.OriginalArtist:
                    id = "TOPE"; break;
                case FrameID.OriginalReleaseYear:
                    id = "TORY"; break;
                case FrameID.FileOwner:
                    id = "TOWN"; break;
                case FrameID.LeadPerformers:
                    id = "TPE1"; break;
                case FrameID.Band:
                    id = "TPE2"; break;
                case FrameID.Conductor:
                    id = "TPE3"; break;
                case FrameID.Interpreted:
                    id = "TPE4"; break;
                case FrameID.PartOfASet:
                    id = "TPOS"; break;
                case FrameID.Publisher:
                    id = "TPUB"; break;
                case FrameID.TrackNumber:
                    id = "TRCK"; break;
                case FrameID.RecordingDates:
                    id = "TRDA"; break;
                case FrameID.InternetRadioStationName:
                    id = "TRSN"; break;
                case FrameID.InternetRadioStationOwner:
                    id = "TRSO"; break;
                case FrameID.Size:
                    id = "TSIZ"; break;
                case FrameID.ISRC:
                    id = "TSRC"; break;
                case FrameID.EncodingSettings:
                    id = "TSSE"; break;
                case FrameID.Year:
                    id = "TYER"; break;
                case FrameID.UserTextInformation:
                    id = "TXXX"; break;
                case FrameID.UniqueFileIdentifier:
                    id = "UFID"; break;
                case FrameID.TermsOfUse:
                    id = "USER"; break;
                case FrameID.UnsynchronizedLyris:
                    id = "USLT"; break;
                case FrameID.CommercialInformationURL:
                    id = "WCOM"; break;
                case FrameID.CopyrightURL:
                    id = "WCOP"; break;
                case FrameID.OfficialAudioFileWebpage:
                    id = "WOAF"; break;
                case FrameID.OfficialArtistWebpage:
                    id = "WOAR"; break;
                case FrameID.OfficialAudioSourceWebpage:
                    id = "WOAS"; break;
                case FrameID.InternetRadioStationWebpage:
                    id = "WORS"; break;
                case FrameID.PaymentURL:
                    id = "WPAY"; break;
                case FrameID.PublishersOfficialWebpage:
                    id = "WPUB"; break;
                case FrameID.UserURLLinkFrame:
                    id = "WXXX"; break;
                case FrameID.MusicicanCreditsList:
                    id = "TMCL"; break;
                case FrameID.Mood:
                    id = "TMOO"; break;
                case FrameID.ProducedNotice:
                    id = "TPRO"; break;
                case FrameID.AlbumSortOrder:
                    id = "TSOA"; break;
                case FrameID.PerformerSortOrder:
                    id = "TSOP"; break;
                case FrameID.TitleSortOrder:
                    id = "TSOT"; break;
                case FrameID.SetSubtitle:
                    id = "TSST"; break;
                default:
                    throw new ArgumentOutOfRangeException("frameid", "Invalid FrameID");
            }

            if (version == ID3Version.ID3v2_2)
            {
                id = ConvertVersion3IDToVersion2(id);
            }
            return id;
        }
示例#21
0
 ///<summary>
 ///Serves as a hash function for a particular type. <see cref="M:System.Object.GetHashCode"></see> is suitable for use in hashing algorithms and data structures like a hash table.
 ///</summary>
 ///<returns>
 ///A hash code for the current <see cref="T:System.Object"></see>.
 ///</returns>
 ///<filterpriority>2</filterpriority>
 public override int GetHashCode()
 {
     return(FrameID.GetHashCode() ^
            TimeOfFrame.GetHashCode() ^
            FrameDuration.GetHashCode());
 }
示例#22
0
 public static void SetHand(PlayerID playerID, int handIndex, FrameID frameID)
 {
     globalHandIDs[playerID][handIndex] = frameID;
 }