This manual page is for Mac OS X version 10.6.3

If you are running a different version of Mac OS X, view the documentation locally:

  • In Terminal, using the man(1) command

Reading manual pages

Manual pages are intended as a quick reference for people who already understand a technology.

  • For more information about the manual page format, see the manual page for manpages(5).

  • For more information about this technology, look for other documentation in the Apple Reference Library.

  • For general information about writing shell scripts, read Shell Scripting Primer.




transfer::data::source(n)                 Data transfer facilities                 transfer::data::source(n)



____________________________________________________________________________________________________________

NAME
       transfer::data::source - Data source

SYNOPSIS
       package require Tcl  8.4

       package require snit  ?1.0?

       package require transfer::copy  ?0.1?

       package require transfer::data::source  ?0.1?

       transfer::data::source object ?options...?

       object destroy

       object type

       object data

       object size

       object valid msgvar

       object transmit channel blocksize done

____________________________________________________________________________________________________________

DESCRIPTION
       This  package  provides  objects mainly describing the origin of some data to transfer. They are also
       able to initiate transfers of the described information to a channel  using  the  foundation  package
       transfer::copy.

API
       transfer::data::source object ?options...?
              This  command  creates  and  configures  a  new source object. The fully qualified name of the
              object command is returned as the result of the command.

              The recognized options are listed below. It should be noted that the first  four  options  are
              semi-exclusive,  each  specifying  a  different type of data source and associated content. If
              these options are specified more than once then the last option specified is used to  actually
              configure the object.

              -string text
                     This option specifies that the source of the data is an immediate string, and its asso-ciated associated
                     ciated argument contains the string in question.

              -channel handle
                     This option specifies that the source of the data is  a  channel,  and  its  associated
                     argument is the handle of the channel containing the data.

              -file path
                     This  option  specifies that the source of the data is a file, and its associated argu-ment argument
                     ment is the path of the file containing the data.

              -variable varname
                     This option specifies that the source of the data is a string stored in a variable, and
                     its  associated argument contains the name of the variable in question. The variable is
                     assumed to be global or namespaced, anchored at the global namespace.

              -size int
                     This option specifies the size of the data transfer. It is optional and defaults to -1.
                     This  value,  and  any other value less than zero signals to transfer all the data from
                     the source.

       object destroy
              This method destroys the object. Doing so while a transfer initiated by the object  is  active
              is  safe  as  all  data required for the transfer itself was copied, and the completion of the
              transfer will not try to access the initiating object anymore. i.e. the transfer is completely
              separate from the source object itself.

       object type
              This  method  returns  a string describing the type of the data the object is refering to. The
              possible values and their meanings are:

              undefined
                     No data was specified at all, or it was specified incompletely.  The  object  does  not
                     know the type.

              string The data to transfer is contained in a string.

              channel
                     The data to transfer is contained in a channel.

       object data
              This  method  returns  a value depending on the type of the data the object refers to, through
              which the data can be accessed.  The method throws an error if the type is undefined. For type
              string the returned result is the data itself, whereas for type channel the returned result is
              the handle of the channel containing the data.

       object size
              This method returns a value depending on the type of the data the object refers to,  the  size
              of  the data.  The method throws an error if the type is undefined. Return of a negative value
              signals that the object is unable to determine an absolute size upfront (like for  data  in  a
              channel).

       object valid msgvar
              This  method checks the configuration of the object for validity. It returns a boolean flag as
              result, whose value is True if the object is valid, and False otherwise. In  the  latter  case
              the  variable whose name is stored in msgvar is set to an error message describing the problem
              found with the configuration. Otherwise this variable is not touched.

       object transmit channel blocksize done
              This method initiates a transfer of the referenced data to the specified  channel.   When  the
              transfer  completes  the command prefix done is invoked, per the rules for the option -command
              of command transfer::copy::do in the package transfer::copy.  The blocksize specifies the size
              of  the  chunks to transfer in one go. See the option -blocksize of command transfer::copy::do
              in the package transfer::copy.


KEYWORDS
       channel, copy, data source, transfer

COPYRIGHT
       Copyright (c) 2006 Andreas Kupries <andreas_kupries@users.sourceforge.net>




transfer                                             0.1                           transfer::data::source(n)

Reporting Problems

The way to report a problem with this manual page depends on the type of problem:

Content errors
Report errors in the content of this documentation with the feedback links below.
Bug reports
Report bugs in the functionality of the described tool or API through Bug Reporter.
Formatting problems
Report formatting mistakes in the online version of these pages with the feedback links below.

Did this document help you? Yes It's good, but... Not helpful...