خلاصه
CPlusPlus CHOP به شما اجازه می‌دهد اپراتورهای سفارشی CHOP بسازید، با نوشتن پلاگین خودتان در زبان ++C.

برای اطلاعات دقیق‌تر در مورد ساخت پلاگین‌ها برای استفاده در این نود و همچنین دسترسی به پروژه‌های نمونه، به بخش نوشتن پلاگین CPlusPlus و دیگر مقالات موجود در دسته‌بندی C++ مراجعه کنید.


پارامترها – صفحه Load

  • Plugin Path (plugin): مسیر پلاگینی که می‌خواهید بارگذاری کنید.

  • Re-Init Class (reinit): وقتی فعال باشد، نمونه‌ی ساخته‌شده‌ی کلاس توسط پلاگین حذف شده و یک نمونه جدید ایجاد می‌شود.

  • Re-Init Class Pulse (reinitpulse): بلافاصله کلاس را دوباره مقداردهی اولیه می‌کند.

  • Unload Plugin (unloadplugin): وقتی مقدار این پارامتر بالاتر از ۱ برود، نمونه‌ی ساخته‌شده توسط پلاگین حذف و خود پلاگین نیز از حافظه خارج می‌شود. اگر چندین CHOP یک پلاگین را بارگذاری کرده باشند، همه‌ی آن‌ها باید آن را unload کنند تا فایل آزاد شود.


پارامترها – صفحه Common

  • Time Slice (timeslice): با فعال‌کردن این گزینه، کانال‌ها مجبور می‌شوند به‌صورت «Time Sliced» کار کنند. Time Slice فاصله بین آخرین فریم cook شده و فریم جاری است.

  • Scope (scope): برای مشخص‌کردن این‌که کدام کانال‌ها تحت تأثیر قرار می‌گیرند، برخی CHOPها از یک رشته Scope در صفحه‌ی Common استفاده می‌کنند. (بخش Pattern Matching را ببینید.)

  • Sample Rate Match (srselect): برای مدیریت حالتی که نرخ نمونه‌برداری (sample rate) چندین ورودی CHOP متفاوت است. در صورت Resampling، منحنی‌ها با روش Interpolation انتخاب‌شده (یا Linear اگر گزینه Interpolate در دسترس نباشد) درونیابی می‌شوند.

    • Resample At First Input’s Rate (first): استفاده از نرخ ورودی اول برای resample کردن بقیه.

    • Resample At Maximum Rate (max): resample به بالاترین نرخ نمونه‌برداری.

    • Resample At Minimum Rate (min): resample به پایین‌ترین نرخ نمونه‌برداری.

    • Error If Rates Differ (err): نرخ‌های متضاد را نمی‌پذیرد.

  • Export Method (exportmethod): تعیین می‌کند کانال CHOP چگونه به پارامتر متصل شود. (به مقاله Export مراجعه کنید.)

    • DAT Table by Index (datindex): استفاده از جدول DAT dock شده و ارجاع به کانال از طریق ایندکس آن در CHOP.

    • DAT Table by Name (datname): استفاده از جدول DAT dock شده و ارجاع به کانال از طریق نام آن در CHOP.

    • Channel Name is Path:Parameter (autoname): نام کانال به‌طور کامل مقصدی را مشخص می‌کند که باید export شود (مثل geo1/transform1:tx).

  • Export Root (autoexportroot): این مسیر به نود ریشه‌ای اشاره دارد که تمام مسیرهای export شده توسط حالت Channel Name is Path:Parameter نسبت به آن هستند.

  • Export Table (exporttable): جدولی از نوع DAT که اطلاعات export را نگه می‌دارد وقتی از روش‌های DAT Table Export استفاده می‌شود.


ورودی‌های اپراتور

  • Input 0:


کانال‌های Info CHOP

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

کانال‌های Info مشترک در CHOP

  • start: شروع بازه CHOP بر حسب sample.

  • length: تعداد نمونه‌ها در CHOP.

  • sample_rate: نرخ نمونه‌برداری کانال‌ها بر حسب فریم بر ثانیه.

  • num_channels: تعداد کانال‌ها در CHOP.

  • time_slice: اگر CHOP به صورت Time Slice فعال باشد ۱ و در غیر این صورت ۰.

  • export_sernum: شمارشی از تعداد دفعاتی که ارتباط‌های export به‌روزرسانی شده‌اند.

کانال‌های Info مشترک اپراتور

  • total_cooks: تعداد دفعاتی که اپراتور از شروع پردازش تاکنون cook شده است.

  • cook_time: مدت‌زمان آخرین cook بر حسب میلی‌ثانیه.

  • cook_frame: شماره فریمی که این اپراتور آخرین بار cook شده (نسبت به timeline کامپوننت).

  • cook_abs_frame: شماره فریمی که اپراتور آخرین بار cook شده (نسبت به زمان مطلق).

  • cook_start_time: زمانی بر حسب میلی‌ثانیه که اپراتور در آن شروع به cook کردن در فریم جاری کرده.

  • cook_end_time: زمانی بر حسب میلی‌ثانیه که اپراتور در آن cook را در فریم جاری به پایان رسانده.

  • cooked_this_frame: اگر اپراتور در این فریم cook شده باشد مقدار ۱ می‌گیرد.

  • warnings: تعداد هشدارهای موجود در این اپراتور (در صورت وجود).

  • errors: تعداد خطاهای موجود در این اپراتور (در صورت وجود).