Skip to content

Commit

Permalink
Update to v1.0.5
Browse files Browse the repository at this point in the history
  • Loading branch information
iAJTin committed Oct 7, 2020
1 parent e8293c7 commit 16aec04
Show file tree
Hide file tree
Showing 404 changed files with 16,638 additions and 15,699 deletions.
22 changes: 22 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,27 @@
# Changelog
All notable changes to this project will be documented in this file.

## [1.0.5] - 2020-10-07

### Changed

- Library versions for this version

|Library|Version|Description|
|:------|:------|:----------|
|iTin.Core| **2.0.0.0** | Base library containing various extensions, helpers, common constants |
|iTin.Core.Hardware.Common| **1.0.0.0** | Common Hardware Infrastructure |
|iTin.Core.Hardware.Specification.Eedid|**1.0.0.5**| Implementation of the E-EDID (Extended Display Identification Data) specification |
|iTin.Logging| **1.0.0.0** | Logging library |

### Removed

- Remove unnecessary libraries (for now).

- The **Properties** property in data sections, now use **GetProperty(IPropertyKey)** methods with **ImplementedProperties**.

- Please see sample project for see how to use.

## [1.0.4] - 2020-07-31

### Fixed
Expand Down Expand Up @@ -94,6 +115,7 @@ All notable changes to this project will be documented in this file.
### Added
- Create project and first commit

[1.0.5]: https://github.com/iAJTin/iEEDID/releases/tag/v1.0.5
[1.0.4]: https://github.com/iAJTin/iEEDID/releases/tag/v1.0.4
[1.0.3]: https://github.com/iAJTin/iEEDID/releases/tag/v1.0.3
[1.0.2]: https://github.com/iAJTin/iEEDID/releases/tag/v1.0.2
Expand Down
46 changes: 20 additions & 26 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -72,9 +72,9 @@
Console.WriteLine();
Console.WriteLine($@" > {block.Key} Block");

var implSections = eedid.Blocks[block.Key].Sections.ImplementedSections;
Console.WriteLine();
Console.WriteLine(@" > Implemented Sections");
ReadOnlyCollection<Enum> implSections = eedid.Blocks[block.Key].Sections.ImplementedSections;
foreach (Enum section in implSections)
{
Console.WriteLine($@" > {GetFriendlyName(section)}");
Expand All @@ -88,18 +88,17 @@
Console.WriteLine();
Console.WriteLine($@" > {GetFriendlyName(section.Key)} Section");

SectionPropertiesTable sectionProperties = section.Properties.Values;
foreach (KeyValuePair<IPropertyKey, object> property in sectionProperties)
IEnumerable<IPropertyKey> properties = section.ImplementedProperties;
foreach (IPropertyKey property in properties)
{
object value = property.Value;
string friendlyName = GetFriendlyName(property);

IPropertyKey key = (PropertyKey)property.Key;
string friendlyName = GetFriendlyName(key);
PropertyUnit valueUnit = key.PropertyUnit;
string unit =
valueUnit == PropertyUnit.None
? string.Empty
: valueUnit.ToString();
QueryPropertyResult queryResult = section.GetProperty(property);
PropertyItem propertyItem = queryResult.Value;
object value = propertyItem.Value;

PropertyUnit valueUnit = property.PropertyUnit;
string unit = valueUnit == PropertyUnit.None ? string.Empty : valueUnit.ToString();

if (value == null)
{
Expand Down Expand Up @@ -177,18 +176,14 @@
{
Console.WriteLine($@" > {friendlyName}");
var dataBlockProperties = (SectionPropertiesTable)value;
foreach (KeyValuePair<IPropertyKey, object> dataBlockProperty in dataBlockProperties)
foreach (PropertyItem dataBlockProperty in dataBlockProperties)
{
object dataValue = dataBlockProperty.Value;

IPropertyKey dataBlockKey = (PropertyKey)dataBlockProperty.Key;
string dataName = GetFriendlyName(dataBlockKey);
PropertyUnit dataBlockUnit = dataBlockKey.PropertyUnit;
string dataUnit =
dataBlockUnit == PropertyUnit.None
? string.Empty
: dataBlockUnit.ToString();

string dataUnit = dataBlockUnit == PropertyUnit.None ? string.Empty : dataBlockUnit.ToString();
Console.WriteLine($@" > {dataName} > {dataValue} {dataUnit}");
}
}
Expand Down Expand Up @@ -250,15 +245,14 @@

4. Gets a **single property** directly.

EEDID edid = EEDID.Parse(MacBookPro2018.IntegratedLaptopPanelEdidTable);
DataBlock edidBlock = eedid.Blocks[KnownDataBlock.EDID];
BaseDataSectionCollection edidSections = edidBlock.Sections;
DataSection basicDisplaySection = edidSections[(int)KnownEdidSection.BasicDisplay];
object gamma = basicDisplaySection.GetPropertyValue(EedidProperty.Edid.BasicDisplay.Gamma);
if (gamma != null)
{
Console.WriteLine($@" > Gamma > {gamma}");
}
DataBlock edidBlock = eedid.Blocks[KnownDataBlock.EDID];
BaseDataSectionCollection edidSections = edidBlock.Sections;
DataSection basicDisplaySection = edidSections[(int)KnownEdidSection.BasicDisplay];
QueryPropertyResult gammaResult = basicDisplaySection.GetProperty(EedidProperty.Edid.BasicDisplay.Gamma);
if (gammaResult.Success)
{
Console.WriteLine($@" > Gamma > {gammaResult.Value.Value}");
}

# How can I send feedback!!!

Expand Down
89 changes: 44 additions & 45 deletions README.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,23 +7,28 @@ iEEDID is a lightweight implementation that allows us to obtain the the EEDID in
Library versions
================

Library versions for current iEEDID version (1.0.4)

���������������������������������������������������������������������������������������������
| Library Version Description |
���������������������������������������������������������������������������������������������
|iTin.Core 1.0.2 Common calls |
���������������������������������������������������������������������������������������������
|iTin.Core.Interop 1.0.0 Interop calls |
���������������������������������������������������������������������������������������������
|iTin.Core.Hardware 1.0.1 Hardware Interop Calls |
���������������������������������������������������������������������������������������������
|iTin.Core.Hardware.Specification.Eedid 1.0.4 E-EDID Specification Implementation |
���������������������������������������������������������������������������������������������
Library versions for current iEEDID version (1.0.5)

������������������������������������������������������������������������������������������������
| Library Version Description |
������������������������������������������������������������������������������������������������
|iTin.Core 2.0.0.0 Base library containing various |
| extensions, helpers, common constants |
������������������������������������������������������������������������������������������������
|iTin.Core.Hardware.Common 1.0.0.0 Common Hardware Infrastructure |
������������������������������������������������������������������������������������������������
|iTin.Core.Hardware.Specification.Eedid 1.0.0.5 Implementation of the E-EDID |
| (Extended Display Identification Data) |
| specification |
������������������������������������������������������������������������������������������������
|iTin.Logging 1.0.0.0 Logging library |
������������������������������������������������������������������������������������������������

Install via NuGet
=================

PM> Install-Package iEEDID

For more information, please see https://www.nuget.org/packages/iEEDID/

Usage
Expand All @@ -37,18 +42,18 @@ Examples
EEDID edid = EEDID.Parse(MacBookPro2018.IntegratedLaptopPanelEdidTable);
DataBlockCollection blocks = edid.Blocks;
foreach (KnownDataBlock block in blocks.ImplementedBlocks)
{
Console.WriteLine($@" \> {block}");
{
Console.WriteLine($@" > {block}");
}

2. Gets a specific EEDID block.

EEDID edid = EEDID.Parse(MacBookPro2018.IntegratedLaptopPanelEdidTable);
DataBlockCollection blocks = edid.Blocks;
DataBlock edid = blocks[KnownDataBlock.EDID];
if (edid != null)
{
/// block exist!!!
DataBlock edid = blocks[KnownDataBlock.EDID];
if (edid != null)
{
/// block exist!!!
}

3. Prints all EEDID blocks properties.
Expand All @@ -60,9 +65,9 @@ Examples
Console.WriteLine();
Console.WriteLine($@" > {block.Key} Block");

var implSections = eedid.Blocks[block.Key].Sections.ImplementedSections;
Console.WriteLine();
Console.WriteLine(@" > Implemented Sections");
ReadOnlyCollection<Enum> implSections = eedid.Blocks[block.Key].Sections.ImplementedSections;
foreach (Enum section in implSections)
{
Console.WriteLine($@" > {GetFriendlyName(section)}");
Expand All @@ -76,18 +81,17 @@ Examples
Console.WriteLine();
Console.WriteLine($@" > {GetFriendlyName(section.Key)} Section");

SectionPropertiesTable sectionProperties = section.Properties.Values;
foreach (KeyValuePair<IPropertyKey, object> property in sectionProperties)
IEnumerable<IPropertyKey> properties = section.ImplementedProperties;
foreach (IPropertyKey property in properties)
{
object value = property.Value;
string friendlyName = GetFriendlyName(property);

IPropertyKey key = (PropertyKey)property.Key;
string friendlyName = GetFriendlyName(key);
PropertyUnit valueUnit = key.PropertyUnit;
string unit =
valueUnit == PropertyUnit.None
? string.Empty
: valueUnit.ToString();
QueryPropertyResult queryResult = section.GetProperty(property);
PropertyItem propertyItem = queryResult.Value;
object value = propertyItem.Value;

PropertyUnit valueUnit = property.PropertyUnit;
string unit = valueUnit == PropertyUnit.None ? string.Empty : valueUnit.ToString();

if (value == null)
{
Expand Down Expand Up @@ -165,18 +169,14 @@ Examples
{
Console.WriteLine($@" > {friendlyName}");
var dataBlockProperties = (SectionPropertiesTable)value;
foreach (KeyValuePair<IPropertyKey, object> dataBlockProperty in dataBlockProperties)
foreach (PropertyItem dataBlockProperty in dataBlockProperties)
{
object dataValue = dataBlockProperty.Value;

IPropertyKey dataBlockKey = (PropertyKey)dataBlockProperty.Key;
string dataName = GetFriendlyName(dataBlockKey);
PropertyUnit dataBlockUnit = dataBlockKey.PropertyUnit;
string dataUnit =
dataBlockUnit == PropertyUnit.None
? string.Empty
: dataBlockUnit.ToString();

string dataUnit = dataBlockUnit == PropertyUnit.None ? string.Empty : dataBlockUnit.ToString();
Console.WriteLine($@" > {dataName} > {dataValue} {dataUnit}");
}
}
Expand Down Expand Up @@ -235,12 +235,11 @@ Examples

4. Gets a single property directly.

EEDID edid = EEDID.Parse(MacBookPro2018.IntegratedLaptopPanelEdidTable);
DataBlock edidBlock = eedid.Blocks[KnownDataBlock.EDID];
BaseDataSectionCollection edidSections = edidBlock.Sections;
DataSection basicDisplaySection = edidSections[(int)KnownEdidSection.BasicDisplay];
object gamma = basicDisplaySection.GetPropertyValue(EedidProperty.Edid.BasicDisplay.Gamma);
if (gamma != null)
{
Console.WriteLine($@" > Gamma > {gamma}");
}
DataBlock edidBlock = eedid.Blocks[KnownDataBlock.EDID];
BaseDataSectionCollection edidSections = edidBlock.Sections;
DataSection basicDisplaySection = edidSections[(int)KnownEdidSection.BasicDisplay];
QueryPropertyResult gammaResult = basicDisplaySection.GetProperty(EedidProperty.Edid.BasicDisplay.Gamma);
if (gammaResult.Success)
{
Console.WriteLine($@" > Gamma > {gammaResult.Value.Value}");
}
File renamed without changes
91 changes: 91 additions & 0 deletions iEEDID.sln
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 16
VisualStudioVersion = 16.0.29215.179
MinimumVisualStudioVersion = 10.0.40219.1
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "lib", "lib", "{9107F482-D7DD-4B0C-BD6F-8DD01893E157}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "iTin.Core", "iTin.Core", "{F7A4B784-8BE8-4EBE-8516-E741256FE270}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "iTin.Hardware", "iTin.Hardware", "{B2EEBB85-DA4D-436A-8F4B-A455E20BBC41}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "iTin.Hardware.Specification", "iTin.Hardware.Specification", "{FB0E1A10-5DA3-47BC-BA3B-16A0E2031F40}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{91CBD598-2E14-4030-BADA-8FCC9815D318}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "iTin.Hardware.Specification.Eedid", "iTin.Hardware.Specification.Eedid", "{68993C34-C271-4B86-8F48-32B1AD8B5211}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "iTin.Logging", "iTin.Logging", "{F02CE6B9-FE76-40BE-A367-671049F30F81}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "iTin.Logging", "src\lib\net\iTin.Logging\iTin.Logging\iTin.Logging.csproj", "{64B2E2AE-6B3D-40F4-90ED-9AD997293990}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "iTin.Core", "iTin.Core", "{ECA287F2-C325-4BFD-BA77-0C3FF026AD86}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "iTin.Core.Hardware", "iTin.Core.Hardware", "{B9CD054A-6661-4F16-BED2-13EDDCABFD7E}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "iTin.Core.Hardware.Common", "iTin.Core.Hardware.Common", "{B525711A-0DC5-4A68-8C15-7178BF4A2B70}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "iTin.Core", "src\lib\net\iTin.Core\iTin.Core\iTin.Core.csproj", "{D4F4F5C3-77CF-41CE-9DE3-DA109FC3B06B}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "iTin.Core.Hardware.Common", "src\lib\net\iTin.Core\iTin.Core.Hardware\iTin.Core.Hardware.Common\iTin.Core.Hardware.Common.csproj", "{E12CD758-17DE-4410-A30E-3A4964BF1F6D}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "iTin.Hardware.Specification.Eedid", "src\lib\net\iTin.Hardware\iTin.Hardware.Specification\iTin.Hardware.Specification.Eedid\iTin.Hardware.Specification.Eedid.csproj", "{721664B2-81F4-4A58-A1FA-FF44D33B7A6D}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "iEEDID.ConsoleApp", "src\test\iEEDID.ConsoleApp\iEEDID.ConsoleApp.csproj", "{AD3AB6A5-F257-4C36-8EB4-065D49EB3011}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "iEEDID.ConsoleAppCore", "src\test\iEEDID.ConsoleAppCore\iEEDID.ConsoleAppCore.csproj", "{3CC632EE-450F-49FD-8AE6-02F5C2AD9583}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{64B2E2AE-6B3D-40F4-90ED-9AD997293990}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{64B2E2AE-6B3D-40F4-90ED-9AD997293990}.Debug|Any CPU.Build.0 = Debug|Any CPU
{64B2E2AE-6B3D-40F4-90ED-9AD997293990}.Release|Any CPU.ActiveCfg = Release|Any CPU
{64B2E2AE-6B3D-40F4-90ED-9AD997293990}.Release|Any CPU.Build.0 = Release|Any CPU
{D4F4F5C3-77CF-41CE-9DE3-DA109FC3B06B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{D4F4F5C3-77CF-41CE-9DE3-DA109FC3B06B}.Debug|Any CPU.Build.0 = Debug|Any CPU
{D4F4F5C3-77CF-41CE-9DE3-DA109FC3B06B}.Release|Any CPU.ActiveCfg = Release|Any CPU
{D4F4F5C3-77CF-41CE-9DE3-DA109FC3B06B}.Release|Any CPU.Build.0 = Release|Any CPU
{E12CD758-17DE-4410-A30E-3A4964BF1F6D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{E12CD758-17DE-4410-A30E-3A4964BF1F6D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{E12CD758-17DE-4410-A30E-3A4964BF1F6D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{E12CD758-17DE-4410-A30E-3A4964BF1F6D}.Release|Any CPU.Build.0 = Release|Any CPU
{721664B2-81F4-4A58-A1FA-FF44D33B7A6D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{721664B2-81F4-4A58-A1FA-FF44D33B7A6D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{721664B2-81F4-4A58-A1FA-FF44D33B7A6D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{721664B2-81F4-4A58-A1FA-FF44D33B7A6D}.Release|Any CPU.Build.0 = Release|Any CPU
{AD3AB6A5-F257-4C36-8EB4-065D49EB3011}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{AD3AB6A5-F257-4C36-8EB4-065D49EB3011}.Debug|Any CPU.Build.0 = Debug|Any CPU
{AD3AB6A5-F257-4C36-8EB4-065D49EB3011}.Release|Any CPU.ActiveCfg = Release|Any CPU
{AD3AB6A5-F257-4C36-8EB4-065D49EB3011}.Release|Any CPU.Build.0 = Release|Any CPU
{3CC632EE-450F-49FD-8AE6-02F5C2AD9583}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{3CC632EE-450F-49FD-8AE6-02F5C2AD9583}.Debug|Any CPU.Build.0 = Debug|Any CPU
{3CC632EE-450F-49FD-8AE6-02F5C2AD9583}.Release|Any CPU.ActiveCfg = Release|Any CPU
{3CC632EE-450F-49FD-8AE6-02F5C2AD9583}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(NestedProjects) = preSolution
{F7A4B784-8BE8-4EBE-8516-E741256FE270} = {9107F482-D7DD-4B0C-BD6F-8DD01893E157}
{B2EEBB85-DA4D-436A-8F4B-A455E20BBC41} = {9107F482-D7DD-4B0C-BD6F-8DD01893E157}
{FB0E1A10-5DA3-47BC-BA3B-16A0E2031F40} = {B2EEBB85-DA4D-436A-8F4B-A455E20BBC41}
{68993C34-C271-4B86-8F48-32B1AD8B5211} = {FB0E1A10-5DA3-47BC-BA3B-16A0E2031F40}
{F02CE6B9-FE76-40BE-A367-671049F30F81} = {9107F482-D7DD-4B0C-BD6F-8DD01893E157}
{64B2E2AE-6B3D-40F4-90ED-9AD997293990} = {F02CE6B9-FE76-40BE-A367-671049F30F81}
{ECA287F2-C325-4BFD-BA77-0C3FF026AD86} = {F7A4B784-8BE8-4EBE-8516-E741256FE270}
{B9CD054A-6661-4F16-BED2-13EDDCABFD7E} = {F7A4B784-8BE8-4EBE-8516-E741256FE270}
{B525711A-0DC5-4A68-8C15-7178BF4A2B70} = {B9CD054A-6661-4F16-BED2-13EDDCABFD7E}
{D4F4F5C3-77CF-41CE-9DE3-DA109FC3B06B} = {ECA287F2-C325-4BFD-BA77-0C3FF026AD86}
{E12CD758-17DE-4410-A30E-3A4964BF1F6D} = {B525711A-0DC5-4A68-8C15-7178BF4A2B70}
{721664B2-81F4-4A58-A1FA-FF44D33B7A6D} = {68993C34-C271-4B86-8F48-32B1AD8B5211}
{AD3AB6A5-F257-4C36-8EB4-065D49EB3011} = {91CBD598-2E14-4030-BADA-8FCC9815D318}
{3CC632EE-450F-49FD-8AE6-02F5C2AD9583} = {91CBD598-2E14-4030-BADA-8FCC9815D318}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {7E253257-825E-40F1-9BD8-3624F02E7544}
EndGlobalSection
EndGlobal
2 changes: 1 addition & 1 deletion nuget/BuildNuGet.bat
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
@ECHO OFF
CLS

..\src\.nuget\nuget Pack iEEDID.1.0.4.nuspec -NoDefaultExcludes -NoPackageAnalysis -OutputDirectory ..\deployment\nuget
..\src\.nuget\nuget Pack iEEDID.1.0.5.nuspec -NoDefaultExcludes -NoPackageAnalysis -OutputDirectory ..\deployment\nuget

pause

Loading

0 comments on commit 16aec04

Please sign in to comment.