বাম্পার সুইচ#

ভূমিকা#

বাম্পার সুইচ কখন চাপা হয় এবং কখন ছেড়ে দেওয়া হয় তা শনাক্ত করতে bumper ক্লাসটি ব্যবহৃত হয়।

ক্লাস কনস্ট্রাক্টর#

bumper( 
  int32_t index );

ক্লাস ডেস্ট্রাক্টর#

bumper অবজেক্টটি ধ্বংস করে এবং সংশ্লিষ্ট রিসোর্সগুলো মুক্ত করে।

virtual ~bumper();

প্যারামিটার#

প্যারামিটার

প্রকার

বর্ণনা

index

int32_t

যে স্মার্ট পোর্টের সাথে বাম্পার সুইচটি সংযুক্ত থাকে, তা PORTxহিসেবে লেখা হয়, যেখানে x হলো পোর্ট নম্বর (উদাহরণস্বরূপ, PORT1)।

উদাহরণ#

// Create a bumper instance in Port 1
bumper Bumper1 = bumper(PORT1);

সদস্যদের কার্যাবলী#

bumper ক্লাসে নিম্নলিখিত সদস্য ফাংশনগুলো অন্তর্ভুক্ত রয়েছে:

  • pressing — বাম্পার সুইচ চাপা থাকলে রিটার্ন করে।

  • pressed — বাম্পার সুইচ চাপলে যে ফাংশনটি কল করা হবে তা রেজিস্টার করে।

  • released — বাম্পার সুইচ ছেড়ে দিলে যে ফাংশনটি কল করা হবে তা রেজিস্টার করে।

যেকোনো bumper মেম্বার ফাংশন কল করার আগে, bumper একটি ইনস্ট্যান্স তৈরি করতে হবে, যেমনটি নিচে দেখানো হয়েছে:

/* This constructor is required when using VS Code.
Bumper Switch configuration is generated automatically
in VEXcode using the Device Menu. Replace the values
as needed. */

// Create a bumper instance in Port 1
bumper Bumper1 = bumper(PORT1);

pressing#

যদি বাম্পার সুইচটি বর্তমানে চাপা থাকে তবে এটি ফিরে আসে।

Available Functions
int32_t pressing();

Parameters

এই ফাংশনটি কোনো প্যারামিটার গ্রহণ করে না।

Return Values

বাম্পার সুইচ চাপা হচ্ছে কিনা তা বোঝাতে একটি int32_t রিটার্ন করে।

  • 1 — বাম্পার সুইচটি চাপা হচ্ছে।

  • 0 — বাম্পার সুইচটি চাপা হচ্ছে না।

pressed#

বাম্পার সুইচ চাপলে যে ফাংশনটি কল করা হবে, তা রেজিস্টার করে।

Available Functions
void pressed( void (* callback)(void) );

Parameters

প্যারামিটার

প্রকার

বর্ণনা

callback

void (*)(void)

এমন একটি ফাংশনের পয়েন্টার যা বাম্পার চাপলে কল করা হবে। ফাংশনটির কোনো প্যারামিটার থাকবে না এবং এটি ভয়েড রিটার্ন করবে।

Return Values

এই ফাংশনটি কোনো মান ফেরত দেয় না।

Examples

কলব্যাক ফাংশনটি সংজ্ঞায়িত করুন ( int main() এর বাইরে)

// Display a message when bumper is pressed
void BumperPressed() {
  Brain.Screen.print("Bumper pressed");
}

int main() এর ভিতরে কলব্যাকটি নিবন্ধন করুন

int main() {
  /* vexcodeInit() is only required when using VEXcode.
  Remove vexcodeInit() if compiling in VS Code. */
  vexcodeInit();

  // Run BumperPressed when the value of the Bumper Switch is pressed.
  Bumper1.pressed(BumperPressed);
}

released#

বাম্পার সুইচ ছেড়ে দিলে যে ফাংশনটি কল করা হবে, তা রেজিস্টার করে।

Available Functions
void released( void (* callback)(void) );

Parameters

প্যারামিটার

প্রকার

বর্ণনা

callback

void (*)(void)

একটি ফাংশনের পয়েন্টার যা বাম্পারটি ছেড়ে দিলে কল করা হবে। ফাংশনটির কোনো প্যারামিটার থাকবে না এবং এটি ভয়েড রিটার্ন করবে।

Return Values

এই ফাংশনটি কোনো মান ফেরত দেয় না।

Examples

কলব্যাক ফাংশনটি সংজ্ঞায়িত করুন ( int main() এর বাইরে)

// Display a message when bumper is released
void BumperReleased() {
  Brain.Screen.print("Bumper released");
}

int main() এর ভিতরে কলব্যাকটি নিবন্ধন করুন

int main() {
  /* vexcodeInit() is only required when using VEXcode.
  Remove vexcodeInit() if compiling in VS Code. */
  vexcodeInit();

  // Run BumperReleased when the value of the Bumper Switch is released.
  Bumper1.released(BumperReleased);
}