public override IDeepCopyable CopyTo(IDeepCopyable other)
        {
            var dest = other as MedicinalProductUndesirableEffect;

            if (dest == null)
            {
                throw new ArgumentException("Can only copy to an object of the same type", "other");
            }

            base.CopyTo(dest);
            if (Subject != null)
            {
                dest.Subject = new List <Hl7.Fhir.Model.ResourceReference>(Subject.DeepCopy());
            }
            if (SymptomConditionEffect != null)
            {
                dest.SymptomConditionEffect = (Hl7.Fhir.Model.CodeableConcept)SymptomConditionEffect.DeepCopy();
            }
            if (Classification != null)
            {
                dest.Classification = (Hl7.Fhir.Model.CodeableConcept)Classification.DeepCopy();
            }
            if (FrequencyOfOccurrence != null)
            {
                dest.FrequencyOfOccurrence = (Hl7.Fhir.Model.CodeableConcept)FrequencyOfOccurrence.DeepCopy();
            }
            if (Population != null)
            {
                dest.Population = new List <Hl7.Fhir.Model.Population>(Population.DeepCopy());
            }
            return(dest);
        }
        public FrequencyOfOccurrence[] VerifyDataSet(double[] integerSet)
        {
            var integerSetAsSetOfString = integerSet.Select(x => x.ToString()).ToArray();

            var frequencyOfOccurrenceArray = new FrequencyOfOccurrence[9];

            for (var i = 0; i < ByteSets.Length; i++)
            {
                var integersWithDigit = integerSetAsSetOfString.Where(x => x[0] == ByteSets[i]).ToArray();

                var digit = char.GetNumericValue(ByteSets[i]);

                var expectedFrequency = Math.Round(Math.Log10(1 + (1.0 / digit)), 2);

                if (integersWithDigit.Length == 0)
                {
                    frequencyOfOccurrenceArray[i] = new FrequencyOfOccurrence
                    {
                        Integer            = i + 1,
                        Percentage         = 0,
                        Count              = 0,
                        ExpectedCount      = expectedFrequency * integerSetAsSetOfString.Length,
                        ExpectedPercentage = expectedFrequency
                    };

                    continue;
                }

                frequencyOfOccurrenceArray[i] = new FrequencyOfOccurrence
                {
                    Integer            = i + 1,
                    Percentage         = integersWithDigit.Length / (double)integerSetAsSetOfString.Length,
                    Count              = integersWithDigit.Length,
                    ExpectedCount      = expectedFrequency * integerSetAsSetOfString.Length,
                    ExpectedPercentage = expectedFrequency
                };
            }

            return(frequencyOfOccurrenceArray);
        }
示例#3
0
        /// <summary>
        /// Serialize to a JSON object
        /// </summary>
        public new void SerializeJson(Utf8JsonWriter writer, JsonSerializerOptions options, bool includeStartObject = true)
        {
            if (includeStartObject)
            {
                writer.WriteStartObject();
            }
            if (!string.IsNullOrEmpty(ResourceType))
            {
                writer.WriteString("resourceType", (string)ResourceType !);
            }


            ((fhirCsR4.Models.DomainResource) this).SerializeJson(writer, options, false);

            if ((Subject != null) && (Subject.Count != 0))
            {
                writer.WritePropertyName("subject");
                writer.WriteStartArray();

                foreach (Reference valSubject in Subject)
                {
                    valSubject.SerializeJson(writer, options, true);
                }

                writer.WriteEndArray();
            }

            if (SymptomConditionEffect != null)
            {
                writer.WritePropertyName("symptomConditionEffect");
                SymptomConditionEffect.SerializeJson(writer, options);
            }

            if (Classification != null)
            {
                writer.WritePropertyName("classification");
                Classification.SerializeJson(writer, options);
            }

            if (FrequencyOfOccurrence != null)
            {
                writer.WritePropertyName("frequencyOfOccurrence");
                FrequencyOfOccurrence.SerializeJson(writer, options);
            }

            if ((Population != null) && (Population.Count != 0))
            {
                writer.WritePropertyName("population");
                writer.WriteStartArray();

                foreach (Population valPopulation in Population)
                {
                    valPopulation.SerializeJson(writer, options, true);
                }

                writer.WriteEndArray();
            }

            if (includeStartObject)
            {
                writer.WriteEndObject();
            }
        }