🧭 خلاصه (Summary)

Merge CHOP چند ورودی مختلف را می‌گیرد و همه‌ی کانال‌های آن‌ها را در یک خروجی ادغام می‌کند.
در خروجی، ترتیب کانال‌ها به این صورت است:
ابتدا کانال‌های ورودی اول، سپس ورودی دوم، و به همین ترتیب تا آخر.

اگر نام کانال‌ها تکراری باشد، بر اساس گزینه‌ی Duplicate Names رفتار مشخصی دارد.
به‌صورت پیش‌فرض، تاچ‌دیزاینر عددی را به انتهای نام کانال اضافه می‌کند تا نام جدید یکتا شود.

وقتی گزینه‌ی Time Slice در صفحه‌ی Common فعال باشد،
Merge CHOP فقط بازه‌ی زمانی فعلی (Time Slice) را از هر کانال ترکیب می‌کند،
نه کل طول داده‌ها.


⚙️ پارامترها – صفحه Merge (Parameters – Merge Page)

🔹 Align (align)

این گزینه تعیین می‌کند وقتی ورودی‌های مختلف زمان شروع و پایان متفاوتی دارند،
چگونه باید با هم هم‌تراز (Align) شوند:

گزینه توضیح
Automatic (auto) اگر Time Slice فعال باشد، فقط همان بازه را تریم می‌کند؛ در غیر این صورت ورودی‌ها را به طول کل اکستند می‌کند.
Extend to Min/Max (none) از زودترین شروع و دیرترین پایان همه ورودی‌ها استفاده می‌کند و داده‌ها را با Extend Conditions پر می‌کند.
Stretch to Min/Max (stretch) همه کانال‌ها را کشیده و به بازه‌ی مشترک تنظیم می‌کند.
Shift to Minimum (start) همه‌ی ورودی‌ها را طوری جابه‌جا می‌کند که در زودترین نقطه‌ی شروع هم‌زمان شوند.
Shift to Maximum (end) همه‌ی ورودی‌ها را طوری تنظیم می‌کند که در دیرترین پایان هم‌زمان تمام شوند.
Shift to First Interval (shift1) همه ورودی‌ها را با بازه‌ی زمانی ورودی اول هماهنگ می‌کند.
Trim to First Interval (trim1) ورودی‌ها را به بازه‌ی زمانی CHOP اول محدود می‌کند.
Stretch to First Interval (stretch1) ورودی‌ها را کشیده تا طولشان با CHOP اول برابر شود.
Trim to Smallest Interval (trim) همه‌ی کانال‌ها را به کوتاه‌ترین بازه‌ی زمانی ممکن محدود می‌کند.
Stretch to Smallest Interval (squash) همه‌ی کانال‌ها را به کوتاه‌ترین بازه‌ی زمانی ممکن می‌کشد.

🔹 Duplicate Names (duplicate)

وقتی دو یا چند CHOP کانال‌هایی با نام یکسان داشته باشند، رفتار این گزینه مشخص می‌کند کدام نگه داشته شود:

گزینه توضیح
Make Unique (unique) همه کانال‌ها را نگه می‌دارد ولی برای نام‌های تکراری عددی اضافه می‌کند تا یکتا شوند (مثلاً chan1, chan1_1, chan1_2).
Keep First (first) فقط کانال از ورودی اول را نگه می‌دارد و بقیه‌ی کانال‌های همنام حذف می‌شوند.
Keep Last (last) فقط کانال از آخرین ورودی را نگه می‌دارد و بقیه حذف می‌شوند.
Replace First with Last (replace) کانال ورودی آخر جایگزین کانال همنام ورودی اول می‌شود.

⚙️ پارامترها – صفحه Common (Parameters – Common Page)

پارامتر توضیح
Time Slice (timeslice) فعال کردن آن باعث می‌شود فقط داده‌های مربوط به بازه‌ی زمانی فعلی (بین آخرین cook و cook فعلی) پردازش شود.
Scope (scope) تعیین می‌کند کدام کانال‌ها در ادغام درگیر باشند (بر اساس الگوهای نام).
Sample Rate Match (srselect) تنظیم نحوه‌ی هماهنگ‌سازی نرخ نمونه‌برداری بین ورودی‌ها.
Export Method (exportmethod) تعیین نحوه‌ی ارسال خروجی CHOP به پارامترها یا DATها.
Export Root / Export Table مسیر و جدول داده‌های مربوط به عملیات export.

🔌 ورودی‌ها (Operator Inputs)

ورودی توضیح
Input 0, 1, 2, … هر CHOPی که باید در خروجی ادغام شود.

📊 Info CHOP Channels

اطلاعات اضافی مربوط به Merge CHOP را می‌توان از طریق Info CHOP مشاهده کرد.


🔹 Common CHOP Info Channels

نام توضیح
start نقطه‌ی شروع بازه در نمونه‌ها.
length تعداد نمونه‌ها در خروجی.
sample_rate نرخ نمونه‌برداری (فریم بر ثانیه).
num_channels تعداد کل کانال‌های خروجی.
time_slice آیا حالت Time Slice فعال است یا نه (۱ یا ۰).
export_sernum شمار دفعات به‌روزرسانی export.

🔹 Common Operator Info Channels

نام توضیح
total_cooks تعداد دفعات cook از آغاز.
cook_time زمان آخرین cook (میلی‌ثانیه).
cook_frame شماره‌ی فریمی که در آن cook انجام شده (نسبی).
cook_abs_frame شماره‌ی فریم مطلقی که cook انجام شده.
cook_start_time / cook_end_time زمان شروع و پایان cook در آن فریم.
cooked_this_frame آیا در همین فریم cook انجام شده است یا نه.
warnings / errors تعداد هشدارها یا خطاهای موجود در این نود.