# AddSVID

#### int AddSVID(int SVID, string strName, string strFormat, string strUnit)

EZGemPlus에 SVID를 등록하는 함수.&#x20;

알람, 이벤트의 Enable/Disable 상태 유무등록시 Host가 파악할수있습니다.

OBJECT 타입의 SVID 구조를 작성할 수 있습니다.

Parameters

<table data-header-hidden><thead><tr><th width="137" valign="top"></th><th width="95" valign="top"></th><th valign="top"></th></tr></thead><tbody><tr><td valign="top">Name</td><td valign="top">Type</td><td valign="top">Description</td></tr><tr><td valign="top">SVID</td><td valign="top">int</td><td valign="top">등록하려는 SVID</td></tr><tr><td valign="top">strName</td><td valign="top">string</td><td valign="top">등록하려는 SVID의 Name (SVNAME)</td></tr><tr><td valign="top">strFormat</td><td valign="top">string</td><td valign="top">등록하려는 SVVALUE의 format</td></tr><tr><td valign="top">strUnit</td><td valign="top">string</td><td valign="top">등록하려는 SVVALUE의 단위, 단위가 없을 경우 “”(empty string) 입력</td></tr></tbody></table>

```csharp
//기본적인 SVID 등록
m_gem.AddSVID(2101, "SVID.WAFER_ID", "A", "");

/*알람 Enable/Disable 관련 SVID추가는 하기와 같이 등록합니다. 
[NAME==AlAMR_ENABLED] [Format==L]*/
//HOST에서 VID 조회시 어떤 Alarm이 Enabled 이고 어떤 Alarm이 Disable 인지 알 수 있습니다.
m_gem.AddSVID(2021, "ALARM_ENABLED", "L", "");
m_gem.AddSVID(2022, "ALARM_DISABLED", "L", "");

/*이벤트 Enable/Disable 관련 List형태의 VID 추가는 하기와 같이 등록합니다. 
[NAME==EVENT_ENABLED] [Format==L]*/
//HOST에서 VID 조회시 어떤 이벤트가 Enabled 이고 어떤 이벤트가 Disable 인지 알 수 있습니다.
m_gem.AddSVID(2023, "EVENT_ENABLED", "L", "");
m_gem.AddSVID(2024,"EVENT_DISABLED", "L", "");
 
//오브젝트 타입 추가방법 입니다.  [Format==OBJECT]
m_gem.AddSVID(4001, "TEST_OBJECT", "OBJECT", "");
m_gem.AddSVID(4002, "TEST_OBJECT2", "OBJECT", "");

/*오브젝트 타입의 SVID 구조를 작성하는 예시입니다. 해당 구조대로 데이터를 보내게 됩니다. 
이벤트 전송전에 작성하시면 됩니다.*/
m_gem.CloseMsg(4001);       //CloseMsg() 함수를 필수적으로 실행해주셔야 합니다.
m_gem.OpenListItem(4001);
{
    m_gem.OpenListItem(4001);
    {
        m_gem.AddI4Item(4001, m_nControlState);
        m_gem.AddI4Item(4001, m_nPrevControlState);
    }
    m_gem.CloseListItem(4001);
}
m_gem.CloseListItem(4001);

/*오브젝트 타입의 SVID 구조를 작성하는 예시입니다. 해당 구조대로 데이터를 보내게 됩니다. 
이벤트 전송전에 작성하시면 됩니다.*/
m_gem.CloseMsg(4002);      //CloseMsg() 함수를 필수적으로 실행해주셔야 합니다.
m_gem.OpenListItem(4002);
{
    m_gem.OpenListItem(4022);
    {
        m_gem.AddI4Item(4002,ECV.m_nLinkInterval);
        m_gem.AddI4Item(4002,ECV.m_nDeviceID);

        m_gem.OpenListItem(4002);
        {
            m_gem.AddI4Item(4002, ECV.m_nT3);
            m_gem.AddI4Item(4002, ECV.m_nT5);
            m_gem.AddI4Item(4002, ECV.m_nT6);
            m_gem.AddI4Item(4002, ECV.m_nT7);
        }
        m_gem.CloseListItem(4002);
    }
    m_gem.CloseListItem(4002);
}
m_gem.CloseListItem(4002);

```

&#x20;


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://nviasoft.gitbook.io/nviasoft-docs/api-reference/id/addsvid.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
