#ifndef _DECL_RecBisectBfLB_H_
#define _DECL_RecBisectBfLB_H_
#include "charm++.h"
#include "CentralLB.decl.h"

/* DECLS: group RecBisectBfLB: CentralLB{
void RecBisectBfLB(void);
};
 */
class RecBisectBfLB;
class CProxy_RecBisectBfLB:  public virtual _CK_GID, public CProxy_CentralLB{
  public:
    static int __idx;
    static void __register(const char *s, size_t size);
    CProxy_RecBisectBfLB(CkGroupID _gid) :CProxy_CentralLB(_gid){ _ck_gid = _gid; _setChare(0); }
    CProxy_RecBisectBfLB(CkChareID __cid) :CProxy_CentralLB(__cid){ ckSetChareId(__cid); }
    CkChareID ckGetChareId(void) { return _ck_cid; }
    void ckSetChareId(CkChareID __cid){_CHECK_CID(__cid,__idx);_ck_cid=__cid;_setChare(1);}
    CkGroupID ckGetGroupId(void) { return _ck_gid; }
    void ckSetGroupId(CkGroupID _gid){_ck_gid=_gid;_setChare(0);}
    RecBisectBfLB* ckLocalBranch(void) {
      return (RecBisectBfLB *) CkLocalBranch(_ck_gid);
    }
    static RecBisectBfLB* ckLocalBranch(CkGroupID gID) {
      return (RecBisectBfLB *) CkLocalBranch(gID);
    }
/* DECLS: void RecBisectBfLB(void);
 */
    static CkGroupID ckNew(void);
    static CkGroupID ckNewSync(void);
    CProxy_RecBisectBfLB(int retEP, CkChareID *cid);
    CProxy_RecBisectBfLB(void);
    static int  __idx_RecBisectBfLB_void;
    static int  ckIdx_RecBisectBfLB(void) { return __idx_RecBisectBfLB_void; }
    static void _call_RecBisectBfLB_void(void* msg, RecBisectBfLB* obj);
};

extern void _registerRecBisectBfLB(void);
#endif
