Interface PVDataCreate


  • public interface PVDataCreate
    Create PVField field implementations.
    Author:
    mrk
    • Method Detail

      • createPVField

        PVField createPVField​(Field field)
        Create a PVField using given Field introspection data.
        Parameters:
        field - the introspection data to be used to create PVField
        Returns:
        the PVField implementation
      • createPVField

        PVField createPVField​(PVField fieldToClone)
        Create a PVField using given a PVField to clone. This method calls the appropriate createPVScalar, createPVArray, or createPVStructure.
        Parameters:
        fieldToClone - the field to clone
        Returns:
        the PVField implementation
      • createPVScalar

        PVScalar createPVScalar​(Scalar scalar)
        Create an implementation of a scalar field reusing the Scalar introspection interface.
        Parameters:
        scalar - the introspection interface
        Returns:
        the PVScalar implementation
      • createPVScalar

        PVScalar createPVScalar​(ScalarType fieldType)
        Create an implementation of a scalar field. A Scalar introspection interface is created.
        Parameters:
        fieldType - the field type
        Returns:
        the PVScalar implementation
      • createPVScalar

        PVScalar createPVScalar​(PVScalar scalarToClone)
        Create an implementation of a scalar field by cloning an existing PVScalar. The new PVScalar will have the same value and auxInfo as the original.
        Parameters:
        scalarToClone - the PVScalar to clone
        Returns:
        the PVScalar implementation
      • createPVScalarArray

        PVScalarArray createPVScalarArray​(ScalarArray array)
        Create an implementation of an array field reusing the Array introspection interface.
        Parameters:
        array - the introspection interface
        Returns:
        the PVScalarArray implementation
      • createPVScalarArray

        PVScalarArray createPVScalarArray​(ScalarType elementType)
        Create an implementation for an array field. An Array introspection interface is created.
        Parameters:
        elementType - the element type
        Returns:
        the PVScalarArray implementation
      • createPVScalarArray

        PVScalarArray createPVScalarArray​(PVScalarArray arrayToClone)
        Create an implementation of an array field by cloning an existing PVArray. The new PVArray will have the same value and auxInfo as the original.
        Parameters:
        arrayToClone - the PVScalarArray to clone
        Returns:
        the PVScalarArray implementation
      • createPVStructureArray

        PVStructureArray createPVStructureArray​(StructureArray structureArray)
        Create an implementation of an array with structure elements.
        Parameters:
        structureArray - the introspection interface. All elements share the same introspection interface.
        Returns:
        the PVStructureArray implementation
      • createPVUnionArray

        PVUnionArray createPVUnionArray​(UnionArray unionArray)
        Create an implementation of an array with union elements.
        Parameters:
        unionArray - The introspection interface. All elements share the same introspection interface
        Returns:
        the PVUnionArray implementation
      • createPVStructure

        PVStructure createPVStructure​(Structure structure)
        Create implementation for PVStructure.
        Parameters:
        structure - the introspection interface
        Returns:
        the PVStructure implementation
      • createPVUnion

        PVUnion createPVUnion​(Union union)
        Create implementation for PVUnion.
        Parameters:
        union - The introspection interface
        Returns:
        the PVUnion implementation
      • createPVStructure

        PVStructure createPVStructure​(String[] fieldNames,
                                      PVField[] pvFields)
        Create implementation.
        Parameters:
        fieldNames - the array of fieldNames
        pvFields - the array of PVField
        Returns:
        the PVStructure implementation
      • createPVVariantUnion

        PVUnion createPVVariantUnion()
        Create variant union implementation.
        Returns:
        the variant PVUnion implementation.
      • createPVVariantUnionArray

        PVUnionArray createPVVariantUnionArray()
        Create variant union array implementation.
        Returns:
        the variant PVUnionArray implementation.
      • createPVStructure

        PVStructure createPVStructure​(PVStructure structToClone)
        Clone an existing PVStructure.
        Parameters:
        structToClone - the PVStructure to clone. Each subfield and any auxInfo is cloned and added to the newly created structure.
        Returns:
        the PVStructure implementation
      • createPVUnion

        PVUnion createPVUnion​(PVUnion unionToClone)
        Clone an existing PVUnion.
        Parameters:
        unionToClone - the PVUnion to clone
        Returns:
        the new PVUnion
      • flattenPVStructure

        PVField[] flattenPVStructure​(PVStructure pvStructure)
        Get a PVField[] that has all fields of pvStructure in offset order.
        Parameters:
        pvStructure - the PVStructure
        Returns:
        the array of PVField in offset order