// Generated by data binding compiler. Do not edit!
package com.toughra.ustadmobile.databinding;

import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.databinding.Bindable;
import androidx.databinding.DataBindingUtil;
import androidx.databinding.ViewDataBinding;
import com.google.android.material.button.MaterialButton;
import com.toughra.ustadmobile.R;
import com.ustadmobile.core.controller.ClazzLogEditAttendancePresenter;
import com.ustadmobile.lib.db.entities.ClazzLogAttendanceRecordWithPerson;
import de.hdodenhof.circleimageview.CircleImageView;
import java.lang.Deprecated;
import java.lang.Object;
import java.util.Map;

public abstract class ItemClazzLogAttendanceRecordEditBinding extends ViewDataBinding {
  @NonNull
  public final MaterialButton absentButton;

  @NonNull
  public final TextView itemClazzlogDetailStudentName;

  @NonNull
  public final CircleImageView itemClazzlogDetailStudentPersonIcon;

  @NonNull
  public final MaterialButton lateButton;

  @NonNull
  public final MaterialButton presentButton;

  @Bindable
  protected ClazzLogAttendanceRecordWithPerson mClazzLogAttendanceRecordWithPerson;

  @Bindable
  protected ClazzLogEditAttendancePresenter mMPresenter;

  @Bindable
  protected Map<Integer, Integer> mAttendanceRecordStatusMap;

  protected ItemClazzLogAttendanceRecordEditBinding(Object _bindingComponent, View _root,
      int _localFieldCount, MaterialButton absentButton, TextView itemClazzlogDetailStudentName,
      CircleImageView itemClazzlogDetailStudentPersonIcon, MaterialButton lateButton,
      MaterialButton presentButton) {
    super(_bindingComponent, _root, _localFieldCount);
    this.absentButton = absentButton;
    this.itemClazzlogDetailStudentName = itemClazzlogDetailStudentName;
    this.itemClazzlogDetailStudentPersonIcon = itemClazzlogDetailStudentPersonIcon;
    this.lateButton = lateButton;
    this.presentButton = presentButton;
  }

  public abstract void setClazzLogAttendanceRecordWithPerson(
      @Nullable ClazzLogAttendanceRecordWithPerson clazzLogAttendanceRecordWithPerson);

  @Nullable
  public ClazzLogAttendanceRecordWithPerson getClazzLogAttendanceRecordWithPerson() {
    return mClazzLogAttendanceRecordWithPerson;
  }

  public abstract void setMPresenter(@Nullable ClazzLogEditAttendancePresenter mPresenter);

  @Nullable
  public ClazzLogEditAttendancePresenter getMPresenter() {
    return mMPresenter;
  }

  public abstract void setAttendanceRecordStatusMap(
      @Nullable Map<Integer, Integer> attendanceRecordStatusMap);

  @Nullable
  public Map<Integer, Integer> getAttendanceRecordStatusMap() {
    return mAttendanceRecordStatusMap;
  }

  @NonNull
  public static ItemClazzLogAttendanceRecordEditBinding inflate(@NonNull LayoutInflater inflater,
      @Nullable ViewGroup root, boolean attachToRoot) {
    return inflate(inflater, root, attachToRoot, DataBindingUtil.getDefaultComponent());
  }

  /**
   * This method receives DataBindingComponent instance as type Object instead of
   * type DataBindingComponent to avoid causing too many compilation errors if
   * compilation fails for another reason.
   * https://issuetracker.google.com/issues/116541301
   * @Deprecated Use DataBindingUtil.inflate(inflater, R.layout.item_clazz_log_attendance_record_edit, root, attachToRoot, component)
   */
  @NonNull
  @Deprecated
  public static ItemClazzLogAttendanceRecordEditBinding inflate(@NonNull LayoutInflater inflater,
      @Nullable ViewGroup root, boolean attachToRoot, @Nullable Object component) {
    return ViewDataBinding.<ItemClazzLogAttendanceRecordEditBinding>inflateInternal(inflater, R.layout.item_clazz_log_attendance_record_edit, root, attachToRoot, component);
  }

  @NonNull
  public static ItemClazzLogAttendanceRecordEditBinding inflate(@NonNull LayoutInflater inflater) {
    return inflate(inflater, DataBindingUtil.getDefaultComponent());
  }

  /**
   * This method receives DataBindingComponent instance as type Object instead of
   * type DataBindingComponent to avoid causing too many compilation errors if
   * compilation fails for another reason.
   * https://issuetracker.google.com/issues/116541301
   * @Deprecated Use DataBindingUtil.inflate(inflater, R.layout.item_clazz_log_attendance_record_edit, null, false, component)
   */
  @NonNull
  @Deprecated
  public static ItemClazzLogAttendanceRecordEditBinding inflate(@NonNull LayoutInflater inflater,
      @Nullable Object component) {
    return ViewDataBinding.<ItemClazzLogAttendanceRecordEditBinding>inflateInternal(inflater, R.layout.item_clazz_log_attendance_record_edit, null, false, component);
  }

  public static ItemClazzLogAttendanceRecordEditBinding bind(@NonNull View view) {
    return bind(view, DataBindingUtil.getDefaultComponent());
  }

  /**
   * This method receives DataBindingComponent instance as type Object instead of
   * type DataBindingComponent to avoid causing too many compilation errors if
   * compilation fails for another reason.
   * https://issuetracker.google.com/issues/116541301
   * @Deprecated Use DataBindingUtil.bind(view, component)
   */
  @Deprecated
  public static ItemClazzLogAttendanceRecordEditBinding bind(@NonNull View view,
      @Nullable Object component) {
    return (ItemClazzLogAttendanceRecordEditBinding)bind(component, view, R.layout.item_clazz_log_attendance_record_edit);
  }
}
