---
name: "sc_BcastState"
section: "3"
platform: "linux"
package: "libsc-doc"
version: "2.3.1-22"
release: "Debian 12 (Bookworm)"
platforms: ["linux"]
url: "https://new.carta.tech/sc_BcastState"
---

# sc\_BcastState(3)

This creates and forwards/retrieves data from either a BcastStateRecv or a BcastStateSend depending on the value of the argument to constructor.

## NAME

sc::BcastState - This creates and forwards/retrieves data from either a **BcastStateRecv** or a **BcastStateSend** depending on the value of the argument to constructor.

## SYNOPSIS

`#include <mstate.h>`

### Public Member Functions

**BcastState** (const **Ref**\< **MessageGrp** \> &, int source=0)\
 Create a **BcastState** object. The default source is node 0.  void **bcast** (int &)\
 Broadcast data to all nodes.  void **bcast** (double &)\
 void **bcast** (int \*&, int)\
 void **bcast** (double \*&, int)\
 template\<class T \> void **bcast** (**Ref**\< T \> &a)\
 void **flush** ()\
 Force data to be written.  void **forget\_references** ()\
 Call the **StateOut** or **StateIn** forget\_references member.  void **set\_buffer\_size** (int)\
 Controls the amount of data that is buffered before it is sent.

## Detailed Description

This creates and forwards/retrieves data from either a **BcastStateRecv** or a **BcastStateSend** depending on the value of the argument to constructor.

## Member Function Documentation

### void sc::BcastState::bcast (int &)

Broadcast data to all nodes. After these are called for a group of data the flush member must be called to force the source node to actually write the data.

### void sc::BcastState::flush ()

Force data to be written. Data is not otherwise written until the buffer is full.

## Author

Generated automatically by Doxygen for MPQC from the source code.
