## Uses of Class
org.apache.sysds.runtime.privacy.PrivacyConstraint

- Packages that use PrivacyConstraint
  Package | Description
  --- | ---
  org.apache.sysds.hops |
  org.apache.sysds.lops |
  org.apache.sysds.parser |
  org.apache.sysds.runtime.instructions |
  org.apache.sysds.runtime.instructions.cp |
  org.apache.sysds.runtime.privacy |
  org.apache.sysds.runtime.privacy.propagation |
  org.apache.sysds.runtime.util |

- - ### Uses of PrivacyConstraint in org.apache.sysds.hops

    Methods in org.apache.sysds.hops that return PrivacyConstraint
    Modifier and Type | Method | Description
    --- | --- | ---
    `PrivacyConstraint` | Hop.`getPrivacy()` |

    Methods in org.apache.sysds.hops with parameters of type PrivacyConstraint
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | Hop.`setPrivacy​(PrivacyConstraint privacy)` |

  - ### Uses of PrivacyConstraint in org.apache.sysds.lops

    Methods in org.apache.sysds.lops that return PrivacyConstraint
    Modifier and Type | Method | Description
    --- | --- | ---
    `PrivacyConstraint` | Lop.`getPrivacyConstraint()` |

    Methods in org.apache.sysds.lops with parameters of type PrivacyConstraint
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | Lop.`setPrivacyConstraint​(PrivacyConstraint privacy)` | Method to set privacy constraint of Lop.

  - ### Uses of PrivacyConstraint in org.apache.sysds.parser

    Methods in org.apache.sysds.parser that return PrivacyConstraint
    Modifier and Type | Method | Description
    --- | --- | ---
    `PrivacyConstraint` | Identifier.`getPrivacy()` |

    Methods in org.apache.sysds.parser with parameters of type PrivacyConstraint
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | Identifier.`setPrivacy​(PrivacyConstraint privacyConstraint)` |

  - ### Uses of PrivacyConstraint in org.apache.sysds.runtime.instructions

    Methods in org.apache.sysds.runtime.instructions that return PrivacyConstraint
    Modifier and Type | Method | Description
    --- | --- | ---
    `PrivacyConstraint` | Instruction.`getPrivacyConstraint()` |

    Methods in org.apache.sysds.runtime.instructions with parameters of type PrivacyConstraint
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | Instruction.`setPrivacyConstraint​(PrivacyConstraint pc)` |

  - ### Uses of PrivacyConstraint in org.apache.sysds.runtime.instructions.cp

    Methods in org.apache.sysds.runtime.instructions.cp that return PrivacyConstraint
    Modifier and Type | Method | Description
    --- | --- | ---
    `PrivacyConstraint` | CPOperand.`getPrivacyConstraint()` |
    `PrivacyConstraint` | Data.`getPrivacyConstraint()` |

    Methods in org.apache.sysds.runtime.instructions.cp with parameters of type PrivacyConstraint
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | CPOperand.`setPrivacyConstraint​(PrivacyConstraint privacyConstraint)` |
    `void` | Data.`setPrivacyConstraints​(PrivacyConstraint pc)` |

  - ### Uses of PrivacyConstraint in org.apache.sysds.runtime.privacy

    Methods in org.apache.sysds.runtime.privacy with parameters of type PrivacyConstraint
    Modifier and Type | Method | Description
    --- | --- | ---
    `static PrivacyConstraint.PrivacyLevel` | PrivacyUtils.`getGeneralPrivacyLevel​(PrivacyConstraint privacyConstraint)` |
    `static PrivacyConstraint.PrivacyLevel[]` | PrivacyUtils.`getGeneralPrivacyLevels​(PrivacyConstraint[] privacyConstraints)` |
    `static boolean` | PrivacyUtils.`privacyConstraintActivated​(PrivacyConstraint constraint)` | Returns true if the privacy constraint is not null and the privacy level is set to Private or PrivateAggregation.
    `static boolean` | PrivacyUtils.`privacyConstraintFineGrainedActivated​(PrivacyConstraint constraint)` | Returns true if the privacy constraint is not null and it has fine-grained constraints.
    `static void` | PrivacyUtils.`setFineGrainedPrivacy​(PrivacyConstraint privacyConstraint, Expression eFineGrainedPrivacy)` |
    `static boolean` | PrivacyUtils.`someConstraintSetBinary​(PrivacyConstraint... privacyConstraints)` | Returns true if some constraints are set for either of two input privacy constraints.
    `static boolean` | PrivacyUtils.`someConstraintSetUnary​(PrivacyConstraint privacyConstraint)` | Returns true if the constraint is set for the input privacy constraint.

  - ### Uses of PrivacyConstraint in org.apache.sysds.runtime.privacy.propagation

    Methods in org.apache.sysds.runtime.privacy.propagation that return PrivacyConstraint
    Modifier and Type | Method | Description
    --- | --- | ---
    `static PrivacyConstraint` | PrivacyPropagator.`mergeBinary​(PrivacyConstraint privacyConstraint1, PrivacyConstraint privacyConstraint2)` | Merges the input privacy constraints using the core propagation with NonAggregate operator type.
    `static PrivacyConstraint` | PrivacyPropagator.`parseAndReturnPrivacyConstraint​(org.apache.wink.json4j.JSONObject mtd)` | Parses the privacy constraint of the given metadata object or returns null if no privacy constraint is set in the metadata.
    `PrivacyConstraint` | AppendPropagator.`propagate()` |
    `PrivacyConstraint` | ListAppendPropagator.`propagate()` |
    `PrivacyConstraint[]` | ListRemovePropagator.`propagate()` |
    `PrivacyConstraint` | MatrixMultiplicationPropagator.`propagate()` |
    `PrivacyConstraint` | Propagator.`propagate()` | Activates the propagation and returns the output privacy constraint.
    `PrivacyConstraint[]` | PropagatorMultiReturn.`propagate()` | Activates the propagation and returns the output privacy constraints.

    Methods in org.apache.sysds.runtime.privacy.propagation with parameters of type PrivacyConstraint
    Modifier and Type | Method | Description
    --- | --- | ---
    `static PrivacyConstraint` | PrivacyPropagator.`mergeBinary​(PrivacyConstraint privacyConstraint1, PrivacyConstraint privacyConstraint2)` | Merges the input privacy constraints using the core propagation with NonAggregate operator type.
    `void` | AppendPropagator.`setFields​(MatrixBlock input1, PrivacyConstraint privacyConstraint1, MatrixBlock input2, PrivacyConstraint privacyConstraint2)` |
    `void` | MatrixMultiplicationPropagator.`setFields​(MatrixBlock input1, PrivacyConstraint privacyConstraint1, MatrixBlock input2, PrivacyConstraint privacyConstraint2)` | Sets all fields of propagator.

    Constructors in org.apache.sysds.runtime.privacy.propagation with parameters of type PrivacyConstraint
    Constructor | Description
    --- | ---
    `AppendPropagator​(MatrixBlock input1, PrivacyConstraint privacyConstraint1, MatrixBlock input2, PrivacyConstraint privacyConstraint2)` |
    `CBindPropagator​(MatrixBlock input1, PrivacyConstraint privacyConstraint1, MatrixBlock input2, PrivacyConstraint privacyConstraint2)` |
    `ListAppendPropagator​(ListObject input1, PrivacyConstraint privacyConstraint1, ListObject input2, PrivacyConstraint privacyConstraint2)` |
    `ListRemovePropagator​(ListObject list, PrivacyConstraint listPrivacyConstraint, ScalarObject removePosition, PrivacyConstraint removePositionPrivacyConstraint)` |
    `MatrixMultiplicationPropagator​(MatrixBlock input1, PrivacyConstraint privacyConstraint1, MatrixBlock input2, PrivacyConstraint privacyConstraint2)` | Constructs the propagator and initializes the fields used for propagation.
    `MatrixMultiplicationPropagatorNaive​(MatrixBlock input1, PrivacyConstraint privacyConstraint1, MatrixBlock input2, PrivacyConstraint privacyConstraint2)` |
    `MatrixMultiplicationPropagatorPrivateFirst​(MatrixBlock input1, PrivacyConstraint privacyConstraint1, MatrixBlock input2, PrivacyConstraint privacyConstraint2)` |
    `RBindPropagator​(MatrixBlock input1, PrivacyConstraint privacyConstraint1, MatrixBlock input2, PrivacyConstraint privacyConstraint2)` |

  - ### Uses of PrivacyConstraint in org.apache.sysds.runtime.util

    Methods in org.apache.sysds.runtime.util with parameters of type PrivacyConstraint
    Modifier and Type | Method | Description
    --- | --- | ---
    `static String` | HDFSTool.`metaDataToString​(Types.ValueType vt, Types.ValueType[] schema, Types.DataType dt, DataCharacteristics dc, Types.FileFormat fmt, FileFormatProperties formatProperties, PrivacyConstraint privacyConstraint)` |
    `static void` | HDFSTool.`writeMetaDataFile​(String mtdfile, Types.ValueType vt, Types.ValueType[] schema, Types.DataType dt, DataCharacteristics dc, Types.FileFormat fmt, FileFormatProperties formatProperties, PrivacyConstraint privacyConstraint)` |
    `static void` | HDFSTool.`writeMetaDataFile​(String mtdfile, Types.ValueType vt, Types.ValueType[] schema, Types.DataType dt, DataCharacteristics mc, Types.FileFormat fmt, PrivacyConstraint privacyConstraint)` |
    `static void` | HDFSTool.`writeMetaDataFile​(String mtdfile, Types.ValueType vt, DataCharacteristics dc, Types.FileFormat fmt, FileFormatProperties formatProperties, PrivacyConstraint privacyConstraint)` |
    `static void` | HDFSTool.`writeMetaDataFile​(String mtdfile, Types.ValueType vt, DataCharacteristics mc, Types.FileFormat fmt, PrivacyConstraint privacyConstraint)` |
    `static void` | HDFSTool.`writeScalarMetaDataFile​(String mtdfile, Types.ValueType vt, PrivacyConstraint privacyConstraint)` |