| 593 | /*** Data Segment ***/ |
| 594 | |
| 595 | DataSegmentSubtype GetPathDataSegmentSubtype(const unsigned char *const cip_path) |
| 596 | { |
| 597 | const unsigned int kDataSegmentSubtypeMask = 0x1F; |
| 598 | const unsigned int data_subtype = (*cip_path) & kDataSegmentSubtypeMask; |
| 599 | |
| 600 | DataSegmentSubtype result = kDataSegmentSubtypeReserved; |
| 601 | switch(data_subtype) { |
| 602 | case DATA_SEGMENT_SUBTYPE_SIMPLE_DATA: |
| 603 | result = kDataSegmentSubtypeSimpleData; break; |
| 604 | case DATA_SEGMENT_SUBTYPE_ANSI_EXTENDED_SYMBOL: |
| 605 | result = kDataSegmentSubtypeANSIExtendedSymbol; break; |
| 606 | default: result = kDataSegmentSubtypeReserved; break; |
| 607 | } |
| 608 | return result; |
| 609 | } |
| 610 | |
| 611 | /** @brief Returns the amount of 16-bit data words in the Simple Data EPath |
| 612 | * |
no outgoing calls