> For the complete documentation index, see [llms.txt](https://sandbox-docs.verifone.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://sandbox-docs.verifone.com/adk-5.0-programmers-guide/tec__common_8h_source.md).

# tec\_common.h

[Go to the documentation of this file.](/adk-5.0-programmers-guide/readme/files/dir_c2b6fb90cbe225a4c7f5c562006e9b78/dir_797c2eec9d33c0e51d543580c2b239ca/dir_fa87c044aa590573d847d8ba2d3b48c1/tec__common_8h.md)

```cpp
 1 
 8 #ifndef __TEC_COMMON_INTERFACE__
 9 #define __TEC_COMMON_INTERFACE__
 10 
 11 
 17 #define CTS_CHIP 1 
 18 #define CTS_MSR 2 
 19 #define CTS_CTLS 4 
 20 #define CTS_SYNC 8 
 23 #define CTS_DATA_TLV 0x80 
 29 #define CTS_OK 0 
 30 #define CTS_NO_CHIP 1 
 31 #define CTS_IN_PROGRESS 2 
 32 #define CTS_TIMEOUT 3 
 33 #define CTS_PARAM 4 
 34 #define CTS_NOT_STARTED 5 
 35 #define CTS_STOPPED 6 
 36 #define CTS_CTLS_INIT 7 
 37 #define CTS_ERROR 8 
 38 #define CTS_CTLS_NOT_ALLOWED 9 
 39 #define CTS_CTLS_EMV_NO_CARD 10 
 40 #define CTS_ERR_LOAD 11 
 41 #define CTS_VAS_DECRYPTION_NOT_REQUIRED 12 
 42 #define CTS_VAS_DATA_DECRYPTED_OK 13 
 43 #define CTS_VAS_DATA_DECRYPTED_FAILED 14 
 44 #define CTS_UX_MSRDATA_NOT_AVAILABLE_TIMEOUT 15 
 45 #define CTS_NFC_INIT 16 
 46 #define CTS_CHIP_WITH_WRONG_ATR 17 
 47 #define CTS_API_NOT_ALLOWED 18 
 48 #define CTS_VAS_DATA_ENCRYPTED_OK 19 
 49 #define CTS_UX_NO_MSR_DATA_AFTER_CARD_REMOVL 20 
 50 #define CTS_MSR_ONLY_REQUEST_BUT_NO_DEVICE 21 
 51 #define CTS_CHIP_ONLY_BUT_DETECT_ERROR 22 
 59 #define CTS_PURE_CARD_DETECTION 0x01 
 61 #define CTS_NO_POWERON 0x02 
 63 #define CTS_POWERON_AFTER_CTLS_MSR_DEACTIVATION 0x04 
 66 #define CTS_NFC_ENABLE 0x01 
 68 #define CTS_VAS_ENABLE 0x02 
 70 #define CTS_EMV_AFTER_NFC_ISO 0x04 
 72 #define CTS_VAS_HANDLE_LED_BUZZ 0x08 
 74 #define CTS_EMV_CTLS_TIMEOUT_AFTER_VAS 0x10 
 77 #define CTS_VAS_DONT_DECRYPT 0x20 
 79 #define CTS_MSR_AFTER_CTLS_FAIL 0x40 
 81 #define CTS_NFC_DUTY_CYCLE_OFF 0x80 
 89 #define CTS_DATA_TAG_NFC_RESULT 0xDFDB20 
 90 #define CTS_DATA_TAG_CARD 0xFFDB20 
 91 #define CTS_DATA_TAG_CARD_TYPE 0xDFDB21 
 92 #define CTS_DATA_TAG_CARD_INFO 0xDFDB22 
 93 #define CTS_DATA_TAG_VAS_RESULT 0xDFDB23 
 94 #define CTS_DATA_TAG_VAS_DATA 0xDFDB24 
 95 #define CTS_DATA_TAG_EMV_RESULT 0xDFDB25 
 96 #define CTS_DATA_TAG_VAS_DECRYPT_DATA_RESULT 0xDFDB26 
 97 #define CTS_DATA_TAG_CARD_TYPE_FULL 0xDFDB27 
 98 #define CTS_DATA_TAG_CARDS_TOTAL_COUNT 0xDFDB28 
 99 #define CTS_DATA_TAG_CARDS_A 0xDFDB29 
 100 #define CTS_DATA_TAG_CARDS_B 0xDFDB2A 
 101 #define CTS_DATA_TAG_CARDS_F 0xDFDB2B 
 102 #define CTS_DATA_TAG_CUSTOM_POLL_RESULT 0xDFDB2C 
 103 #define CTS_DATA_TAG_CARD_SAK 0xDFDB2D 
 104 #define CTS_DATA_TAG_CARD_ATQ 0xDFDB2E 
 105 #define CTS_DATA_TAG_CARD_RFU 0xDFDB2F 
 112 #define CTS_OPTION_TAG_APP_ID 0xDFDB40 
 113 #define CTS_OPTION_TAG_SYNC_CARD_TYPE 0xDFDB41 
 114 #define CTS_OPTION_TAG_UX_MSR_TIMEOUT 0xDFDB42 
 126 typedef void (* cts_TraceCallback) (const char *str, void *data);
 127 
 133  void cts_Version(char *version, unsigned char len);
 134 
 140  void cts_SetTraceCallback(cts_TraceCallback cbf, void *cb_data);
 141 
 142 
 143 #endif // avoid double include
```


---

# 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, and the optional `goal` query parameter:

```
GET https://sandbox-docs.verifone.com/adk-5.0-programmers-guide/tec__common_8h_source.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
