এটি হল glib-genmarshal কমান্ড যা আমাদের একাধিক বিনামূল্যের অনলাইন ওয়ার্কস্টেশন যেমন উবুন্টু অনলাইন, ফেডোরা অনলাইন, উইন্ডোজ অনলাইন এমুলেটর বা MAC OS অনলাইন এমুলেটর ব্যবহার করে OnWorks ফ্রি হোস্টিং প্রদানকারীতে চালানো যেতে পারে।
কার্যক্রম:
NAME এর
glib-genmarshal - GLib বন্ধের জন্য C কোড মার্শালার জেনারেশন ইউটিলিটি
সাইনোপিসিস
glib-genmarshal [বিকল্প...] [ফাইল...]
বর্ণনাঃ
glib-genmarshal একটি ছোট ইউটিলিটি যা কলব্যাকের জন্য সি কোড মার্শালার তৈরি করে
GLib-এর GObject সাবলাইব্রেরিতে GClosure মেকানিজমের কাজ। মার্শালার
ফাংশনগুলির একটি প্রমিত স্বাক্ষর থাকে, সেগুলি আহ্বানকারী বন্ধে পাস হয়, একটি অ্যারে
কলব্যাক ফাংশন প্যারামিটার ধারণ করে মান কাঠামো এবং এর জন্য একটি মান কাঠামো
কলব্যাকের রিটার্ন মান। মার্শালার তখন সংশ্লিষ্ট সি-কে কল করার জন্য দায়ী
স্ট্যাকের সমস্ত পরামিতি সহ বন্ধের কোড ফাংশন এবং এর সংগ্রহ
ফেরত মূল্য.
glib-genmarshal ইনপুট হিসাবে তৈরি করতে মার্শালারদের একটি তালিকা নেয়। মার্শালার তালিকা হল
হয় স্ট্যান্ডার্ড ইনপুট থেকে বা অতিরিক্ত আর্গুমেন্ট হিসাবে পাস করা ফাইলগুলি থেকে পড়ুন
কমান্ড লাইন
মার্শালার তালিকা বিন্যাস
মার্শালার তালিকাগুলি লাইন দ্বারা প্রক্রিয়া করা হয়, একটি লাইন ফর্মে একটি মন্তব্য থাকতে পারে
of
অথবা ফর্মের একটি মার্শালার স্পেসিফিকেশন
RTYPE:PTYPE
RTYPE:PTYPE,PTYPE
RTYPE:PTYPE,PTYPE,PTYPE
(16 পর্যন্ত PTYPEs উপস্থিত থাকতে পারে)।
সার্জারির RTYPE অংশ কলব্যাকের রিটার্ন টাইপ এবং PTYPEকোলনের ডানদিকে
কলব্যাকের পরামিতি তালিকা নির্দিষ্ট করুন, প্রথম এবং শেষ আর্গুমেন্ট ছাড়া যা
সবসময় নির্দেশক হয়
স্থিতিমাপ ধরনের
বর্তমানে, নিম্নলিখিত প্রকারগুলি সমর্থিত:
অকার্যকর
কোন রিটার্ন টাইপ, বা কোন অতিরিক্ত পরামিতি নির্দেশ করে না। যদি অকার্যকর প্যারামিটার হিসাবে ব্যবহৃত হয়
তালিকা, কোন অতিরিক্ত পরামিতি উপস্থিত থাকতে পারে.
বুলিয়ান
বুলিয়ান প্রকারের জন্য (জিবুলিয়ান)
চর
স্বাক্ষরিত চার প্রকারের জন্য (gchar)
UCHAR
স্বাক্ষরবিহীন চর প্রকারের জন্য (গুচার)
INT
স্বাক্ষরিত পূর্ণসংখ্যা প্রকারের জন্য (জিন্ট)
UINT
স্বাক্ষরবিহীন পূর্ণসংখ্যা প্রকারের জন্য (গিন্ট)
দীর্ঘ
স্বাক্ষরিত দীর্ঘ পূর্ণসংখ্যা প্রকারের জন্য (লং)
ULONG
স্বাক্ষরবিহীন দীর্ঘ পূর্ণসংখ্যা প্রকারের জন্য (গুলং)
INT64
স্বাক্ষরিত 64বিট পূর্ণসংখ্যা প্রকারের জন্য (gint64)
UINT64
স্বাক্ষরবিহীন 64বিট পূর্ণসংখ্যা প্রকারের জন্য (guint64)
ENUM
গণনার প্রকারের জন্য (জিন্ট)
ফ্ল্যাগস
পতাকা গণনার প্রকারের জন্য (গিন্ট)
ভাসা
একক-নির্ভুল ফ্লোট প্রকারের জন্য (gfloat)
ডবল
ডাবল-নির্ভুলতা ফ্লোট প্রকারের জন্য (gdouble)
STRING এর
স্ট্রিং ধরনের জন্য (gchar*)
বাক্সযুক্ত
বক্সযুক্ত (বেনামী কিন্তু রেফারেন্স গণনা) প্রকারের জন্য (GBoxed*)
পারম
GParamSpec বা প্রাপ্ত প্রকারের জন্য (GParamSpec*)
পয়েন্টার
বেনামী পয়েন্টার প্রকারের জন্য (gpointer)
ওবিজেইসিটি
GObject বা প্রাপ্ত প্রকারের জন্য (GObject*)
ভেরিয়েন্ট
GVariant প্রকারের জন্য (GVariant*)
কিছুই না
এর জন্য অপ্রচলিত উপনাম অকার্যকর
bool
এর জন্য অপ্রচলিত উপনাম বুলিয়ান
বিকল্প
-- শিরোনাম
মার্শালারদের হেডার ফাইলের বিষয়বস্তু তৈরি করুন।
-- শরীর
মার্শালারদের সি কোড ফাইলের বিষয়বস্তু তৈরি করুন।
--প্রিফিক্স=প্রিফিক্স
মার্শালার উপসর্গ নির্দিষ্ট করুন। ডিফল্ট উপসর্গ হল `g_cclosure_marshal'।
--skip-source
উত্পন্ন মন্তব্যে উৎস অবস্থানের মন্তব্য এড়িয়ে যান।
--stdinc
GObject লাইব্রেরির স্ট্যান্ডার্ড মার্শালার ব্যবহার করুন এবং gmarshal.h in অন্তর্ভুক্ত করুন
হেডার ফাইল তৈরি করা হয়েছে।
--নোস্টডিঙ্ক
GObject লাইব্রেরির স্ট্যান্ডার্ড মার্শালার ব্যবহার করবেন না এবং gmarshal.h এড়িয়ে যান
জেনারেটেড হেডার ফাইলে নির্দেশ অন্তর্ভুক্ত করুন।
-- অভ্যন্তরীণ
G_GNUC_INTERNAL ব্যবহার করে জেনারেট করা ফাংশনগুলিকে অভ্যন্তরীণ হিসাবে চিহ্নিত করুন।
--ভালিস্ট-মার্শালার
g_signal_set_va_marshaller() এর সাথে ব্যবহারের জন্য ভ্যালিস্ট মার্শালার তৈরি করুন।
-v, --সংস্করণ
প্রিন্ট সংস্করণ তথ্য.
--জি-মারাত্মক-সতর্কতা
সতর্কতাগুলিকে মারাত্মক করুন, অর্থাৎ, সতর্কতা দেখা দিলে অবিলম্বে প্রস্থান করুন।
-h, --help
সংক্ষিপ্ত সাহায্য প্রিন্ট করুন এবং প্রস্থান করুন।
-v, --সংস্করণ
প্রিন্ট সংস্করণ এবং প্রস্থান করুন.
EXAMPLE টি
নিম্নলিখিত কলব্যাক ফাংশনগুলির জন্য মার্শালার তৈরি করতে:
void foo (gpointer data1,
gpointer data2);
অকার্যকর বার (gpointer data1,
gint param1,
gpointer data2);
gfloat baz (gpointer data1,
gboolean param1,
গুচার পরম 2,
gpointer data2);
marshaller.list ফাইলটি এইরকম দেখতে হবে:
VOID: অকার্যকর
VOID:INT
ফ্লোট: বুলিয়ান, উচার
এবং আপনি glib-genmarshal কে এভাবে ডাকেন:
glib-genmarshal --header marshaller.list > marshaller.h
glib-genmarshal --body marshaller.list > marshaller.c
জেনারেট করা মার্শালারদের আর্গুমেন্টগুলি তাদের ফাংশনের নামে এনকোড করা আছে। এই জন্য
বিশেষ তালিকা, তারা
g_cclosure_user_marshal_VOID__VOID(),
g_cclosure_user_marshal_VOID__INT(),
g_cclosure_user_marshal_FLOAT__BOOLEAN_UCHAR()।
এগুলি সরাসরি GClosures-এর জন্য ব্যবহার করা যেতে পারে বা GSignalCMarshaller হিসাবে পাস করা যেতে পারে
c_marshaller; সংকেত তৈরির বিষয়ে যুক্তি:
GClosure *cc_foo, *cc_bar, *cc_baz;
cc_foo = g_cclosure_new (NULL, foo, NULL);
g_closure_set_marshal (cc_foo, g_cclosure_user_marshal_VOID__VOID);
cc_bar = g_cclosure_new (NULL, bar, NULL);
g_closure_set_marshal (cc_bar, g_cclosure_user_marshal_VOID__INT);
cc_baz = g_cclosure_new (NULL, baz, NULL);
g_closure_set_marshal (cc_baz, g_cclosure_user_marshal_FLOAT__BOOLEAN_UCHAR);
onworks.net পরিষেবা ব্যবহার করে glib-genmarshal অনলাইন ব্যবহার করুন