public void ShouldIdentifyAsEqual()
        {
            var dto0 = new FingerprintData(new bool[0], new ModelReference <int>(0), new ModelReference <int>(0));
            var dto1 = new FingerprintData(new bool[0], new ModelReference <int>(0), new ModelReference <int>(0));

            Assert.AreEqual(dto0, dto1);
        }
        public IModelReference InsertFingerprint(FingerprintData fingerprintData)
        {
            var fingerprint = new Fingerprint {
                Signature = fingerprintData.Signature, TrackId = (ObjectId)fingerprintData.TrackReference.Id
            };

            GetCollection <Fingerprint>(Fingerprints).Insert(fingerprint);
            return(fingerprintData.FingerprintReference = new MongoModelReference(fingerprint.Id));
        }
        public void InsertFingerprintTest()
        {
            var track          = new TrackData("isrc", "artist", "title", "album", 1986, 200);
            var trackReference = ModelService.InsertTrack(track);
            var fingerprint    = new FingerprintData(GenericFingerprint, trackReference);

            ModelService.InsertFingerprint(fingerprint);

            AssertModelReferenceIsInitialized(fingerprint.FingerprintReference);
        }
        public void InsertFingerprintTest()
        {
            var track = new TrackData("isrc", "artist", "title", "album", 1986, 200);
            var trackReference = modelService.InsertTrack(track);
            var fingerprint = new FingerprintData(GenericFingerprint(), trackReference);

            modelService.InsertFingerprint(fingerprint);

            AssertModelReferenceIsInitialized(fingerprint.FingerprintReference);
        }
Example #5
0
        public IModelReference InsertFingerprint(FingerprintData fingerprint)
        {
            if (!storage.Fingerprints.ContainsKey(fingerprint.TrackReference))
            {
                storage.Fingerprints[fingerprint.TrackReference] = new List <FingerprintData>();
            }

            storage.Fingerprints[fingerprint.TrackReference].Add(fingerprint);

            return(fingerprint.FingerprintReference = new ModelReference <int>(Interlocked.Increment(ref counter)));
        }
        public IModelReference InsertFingerprint(FingerprintData fingerprint)
        {
            byte[] byteSignature = GetByteArrayFromBool(fingerprint.Signature);
            var fingerprintId = PrepareStoredProcedure(SpInsertFingerprint)
                                .WithParameter("Signature", byteSignature)
                                .WithParameter("TrackId", fingerprint.TrackReference.Id, DbType.Int32)
                                .Execute()
                                .AsScalar<int>();

            return fingerprint.FingerprintReference = new ModelReference<int>(fingerprintId);
        }
        public IModelReference InsertFingerprint(FingerprintData fingerprint)
        {
            byte[] byteSignature = GetByteArrayFromBool(fingerprint.Signature);
            var    fingerprintId = PrepareStoredProcedure(SpInsertFingerprint)
                                   .WithParameter("Signature", byteSignature)
                                   .WithParameter("TrackId", fingerprint.TrackReference.Id, DbType.Int32)
                                   .Execute()
                                   .AsScalar <int>();

            return(fingerprint.FingerprintReference = new ModelReference <int>(fingerprintId));
        }
        public void InsertFingerprintTest()
        {
            TrackData       track          = new TrackData("isrc", "artist", "title", "album", 1986, 200);
            var             trackReference = modelService.InsertTrack(track);
            FingerprintData fingerprint    = new FingerprintData(GenericFingerprint, trackReference);

            var fingerprintReference = modelService.InsertFingerprint(fingerprint);

            Assert.IsFalse(fingerprintReference.HashCode == 0);
            Assert.IsFalse(fingerprint.FingerprintReference.HashCode == 0);
        }
        public IModelReference InsertFingerprint(FingerprintData fingerprint)
        {
            if (!storage.Fingerprints.ContainsKey(fingerprint.TrackReference))
            {
                storage.Fingerprints[fingerprint.TrackReference] = new List<FingerprintData>();
            }

            storage.Fingerprints[fingerprint.TrackReference].Add(fingerprint);

            return fingerprint.FingerprintReference = new ModelReference<int>(Interlocked.Increment(ref counter));
        }
Example #10
0
 public ScannableFingerprint(int version,
                             string localStableIdentifier, IdentityKey localIdentityKey,
                             string remoteStableIdentifier, IdentityKey remoteIdentityKey)
 {
     this.combinedFingerprint = CombinedFingerprint.CreateBuilder()
                                .SetVersion((uint)version)
                                .SetLocalFingerprint(FingerprintData.CreateBuilder()
                                                     .SetIdentifier(ByteString.CopyFrom(Encoding.UTF8.GetBytes(localStableIdentifier)))
                                                     .SetPublicKey(ByteString.CopyFrom(localIdentityKey.serialize())))
                                .SetRemoteFingerprint(FingerprintData.CreateBuilder()
                                                      .SetIdentifier(ByteString.CopyFrom(Encoding.UTF8.GetBytes(remoteStableIdentifier)))
                                                      .SetPublicKey(ByteString.CopyFrom(remoteIdentityKey.serialize())))
                                .Build();
 }
        public void ReadFingerprintsByTrackReferenceTest()
        {
            TrackData track = new TrackData("isrc", "artist", "title", "album", 1986, 200);
            var trackReference = modelService.InsertTrack(track);
            FingerprintData fingerprint = new FingerprintData(GenericFingerprint(), trackReference);
            modelService.InsertFingerprint(fingerprint);

            var fingerprints = modelService.ReadFingerprintsByTrackReference(trackReference);

            Assert.AreEqual(1, fingerprints.Count);
            Assert.AreEqual(fingerprint.FingerprintReference, fingerprints[0].FingerprintReference);
            Assert.AreEqual(trackReference, fingerprints[0].TrackReference);
            CollectionAssert.AreEqual(GenericFingerprint(), fingerprints[0].Signature);
        }
Example #12
0
        public void ReadFingerprintsByTrackReferenceTest()
        {
            TrackData       track          = new TrackData("isrc", "artist", "title", "album", 1986, 200);
            var             trackReference = modelService.InsertTrack(track);
            FingerprintData fingerprint    = new FingerprintData(GenericFingerprint(), trackReference);

            modelService.InsertFingerprint(fingerprint);

            var fingerprints = modelService.ReadFingerprintsByTrackReference(trackReference);

            Assert.AreEqual(1, fingerprints.Count);
            Assert.AreEqual(fingerprint.FingerprintReference, fingerprints[0].FingerprintReference);
            Assert.AreEqual(trackReference, fingerprints[0].TrackReference);
            CollectionAssert.AreEqual(GenericFingerprint(), fingerprints[0].Signature);
        }
        public void ReadFingerprintsByTrackReferenceTest()
        {
            TrackData       track                = new TrackData("isrc", "artist", "title", "album", 1986, 200);
            var             trackReference       = modelService.InsertTrack(track);
            FingerprintData fingerprint          = new FingerprintData(GenericFingerprint, trackReference);
            var             fingerprintReference = modelService.InsertFingerprint(fingerprint);

            var fingerprints = modelService.ReadFingerprintsByTrackReference(trackReference);

            Assert.IsTrue(fingerprints.Count == 1);
            Assert.AreEqual(fingerprintReference.HashCode, fingerprints[0].FingerprintReference.HashCode);
            Assert.AreEqual(trackReference.HashCode, fingerprints[0].TrackReference.HashCode);
            for (int i = 0; i < GenericFingerprint.Length; i++)
            {
                Assert.AreEqual(GenericFingerprint[i], fingerprints[0].Signature[i]);
            }
        }
        /// <summary>
        /// Saves fingerprint data to file
        /// TODO: specify which image (if any) will be saved alongside fingerprint data
        /// </summary>
        /// <param name="filename">Desired destination for fingerprint data file</param>
        /// <returns>Succesfullness of operation</returns>
        public bool save(string filename, FingerprintData data, Image image, Version version = null)
        {
            try
            {
                string imagePath = saveImage(filename, image);
                var    wrapper   = new FingerprintWrapper {
                    Item = data, ImageFilename = imagePath, Version = version
                };

                this.XML.Save(wrapper, filename);
                return(true);
            }
            catch (Exception ex)
            {
                Console.Error.WriteLine("Save error: " + ex);
                return(false);
            }
        }
        /// <summary>
        /// Loads fingerprint datafrom file
        /// TODO: specify which image (if any) will be saved alongside fingerprint data
        /// </summary>
        /// <param name="filePath">Location of file containing fingerprint data</param>
        /// <returns>Succesfullness of operation</returns>
        public bool load(string filePath, out Image destination, out FingerprintData data, out Version version)
        {
            try
            {
                var dataWrapper = XML.Load(filePath);
                data = dataWrapper.Item;
                string imageFilepath = makeImageFilepath(filePath, dataWrapper.ImageFilename);
                destination = Image.FromFile(imageFilepath);
                version     = dataWrapper.Version;

                return(true);
            }
            catch (Exception ex)
            {
                Console.Error.WriteLine("Loading failed: " + ex);
                MessageBox.Show("Nastala chyba při načítání souboru otisku prstu.", "Chyba načítání", MessageBoxButton.OK, MessageBoxImage.Asterisk);

                data        = null;
                destination = null;
                version     = null;
                return(false);
            }
        }
Example #16
0
 public IModelReference InsertFingerprint(FingerprintData fingerprint)
 {
     return(fingerprintDao.InsertFingerprint(fingerprint));
 }
        public void ReadFingerprintsByTrackReferenceTest()
        {
            TrackData track = new TrackData("isrc", "artist", "title", "album", 1986, 200);
            var trackReference = ModelService.InsertTrack(track);
            FingerprintData fingerprint = new FingerprintData(GenericFingerprint, trackReference);
            ModelService.InsertFingerprint(fingerprint);

            var fingerprints = ModelService.ReadFingerprintsByTrackReference(trackReference);

            Assert.IsTrue(fingerprints.Count == 1);
            Assert.AreEqual(fingerprint.FingerprintReference, fingerprints[0].FingerprintReference);
            Assert.AreEqual(trackReference, fingerprints[0].TrackReference);
            for (int i = 0; i < GenericFingerprint.Length; i++)
            {
                Assert.AreEqual(GenericFingerprint[i], fingerprints[0].Signature[i]);
            }
        }
Example #18
0
 public virtual IModelReference InsertFingerprint(FingerprintData fingerprint)
 {
     return(this.fingerprintDao.InsertFingerprint(fingerprint));
 }
        public void SetFingerprint(Image image, bool clearFingerprintData = false)
        {
            FingerprintData data = (clearFingerprintData || FingerprintData == null) ? new FingerprintData() : FingerprintData;

            SetFingerprint(image, data);
        }
 public void SetFingerprint(Image image, FingerprintData data)
 {
     FingerprintImage = image;
     FingerprintData  = data;
     CanAnalyze       = image != null && data != null;
 }
        public void ShouldNotBeEqualToNull()
        {
            var dto0 = new FingerprintData(new bool[0], new ModelReference <int>(0), new ModelReference <int>(0));

            Assert.IsFalse(dto0.Equals(null));
        }
        public IModelReference InsertFingerprint(FingerprintData fingerprintData)
        {
            int fingerprintId = fingerprintDao.Insert(fingerprintData.Signature, ((ModelReference <int>)fingerprintData.TrackReference).Id);

            return(fingerprintData.FingerprintReference = new ModelReference <int>(fingerprintId));
        }
 public IModelReference InsertFingerprint(FingerprintData fingerprint)
 {
     return fingerprintDao.InsertFingerprint(fingerprint);
 }