cloc.pl
directly with granular control over optionscloc_call.Rd
It is nigh impossible to predict all use-cases for the cloc.pl
acript and
create associated R functions for them. To that end, this function provides direct
access to the script and enables direct passing of command-line parameters
via processx::run()
.
cloc_call(args = character(), echo = TRUE, ...) cloc_help(echo = FALSE) cloc_version(echo = FALSE) cloc_os(echo = FALSE)
| args, | character vector, arguments to the command. They will be escaped
via |
|---|---|
| echo | echo Whether to print the standard output and error to the screen. Note that the order of the standard output and error lines are not necessarily correct, as standard output is typically buffered. |
| ... | other options/parameters passed on to |
the structure returned by processx::run()
(a list with four elements).
As indicated, this is an lower-level function providing granular control over
the options for cloc.pl
. You are invoking an operating system command-line
and need to read the cloc.pl
help very carefully as --- unlike the higher-level
functions -- there are no "guide railss" provided to do helpful things such as e
nsure you do not clobber files in a given directory.
processx::run()
supports "callback functions" to make it easier to deal with
stdout and stderr and you may need to make use of those depending on the how
you are calling the underlying script.
# Get help on the parameters `cloc.pl` supports cloc_call("--help", echo_cmd=TRUE, echo=TRUE)#> Running /usr/local/bin/perl /Users/bob/packages/cloc/inst/bin/cloc.pl --help #> #> Usage: cloc.pl [options] <file(s)/dir(s)/git hash(es)> | <set 1> <set 2> | <report files> #> #> Count, or compute differences of, physical lines of source code in the #> given files (may be archives such as compressed tarballs or zip files, #> or git commit hashes or branch names) and/or recursively below the #> given directories. #> #> Input Options #> --extract-with=<cmd> This option is only needed if cloc is unable #> to figure out how to extract the contents of #> the input file(s) by itself. #> Use <cmd> to extract binary archive files (e.g.: #> .tar.gz, .zip, .Z). Use the literal '>FILE<' as #> a stand-in for the actual file(s) to be #> extracted. For example, to count lines of code #> in the input files #> gcc-4.2.tar.gz perl-5.8.8.tar.gz #> on Unix use #> --extract-with='gzip -dc >FILE< | tar xf -' #> or, if you have GNU tar, #> --extract-with='tar zxf >FILE<' #> and on Windows use, for example: #> --extract-with="\"c:\Program Files\WinZip\WinZip32.exe\" -e -o >FILE< ." #> (if WinZip is installed there). #> --list-file=<file> Take the list of file and/or directory names to #> process from <file>, which has one file/directory #> name per line. Only exact matches are counted; #> relative path names will be resolved starting from #> the directory where cloc is invoked. #> See also --exclude-list-file. #> --vcs=<VCS> Invoke a system call to <VCS> to obtain a list of #> files to work on. If <VCS> is 'git', then will #> invoke 'git ls-files' to get a file list and #> 'git submodule status' to get a list of submodules #> whose contents will be ignored. See also --git #> which accepts git commit hashes and branch names. #> If <VCS> is 'svn' then will invoke 'svn list -R'. #> The primary benefit is that cloc will then skip #> files explicitly excluded by the versioning tool #> in question, ie, those in .gitignore or have the #> svn:ignore property. #> Alternatively <VCS> may be any system command #> that generates a list of files. #> Note: cloc must be in a directory which can read #> the files as they are returned by <VCS>. cloc will #> not download files from remote repositories. #> 'svn list -R' may refer to a remote repository #> to obtain file names (and therefore may require #> authentication to the remote repository), but #> the files themselves must be local. #> --unicode Check binary files to see if they contain Unicode #> expanded ASCII text. This causes performance to #> drop noticeably. #> #> Processing Options #> --autoconf Count .in files (as processed by GNU autoconf) of #> recognized languages. See also --no-autogen. #> --by-file Report results for every source file encountered. #> --by-file-by-lang Report results for every source file encountered #> in addition to reporting by language. #> --config <file> Read command line switches from <file> instead of #> the default location of /Users/bob/.config/cloc/options.txt. #> The file should contain one switch, along with #> arguments (if any), per line. Blank lines and lines #> beginning with '#' are skipped. Options given on #> the command line take priority over entries read from #> the file. #> --count-and-diff <set1> <set2> #> First perform direct code counts of source file(s) #> of <set1> and <set2> separately, then perform a diff #> of these. Inputs may be pairs of files, directories, #> or archives. If --out or --report-file is given, #> three output files will be created, one for each #> of the two counts and one for the diff. See also #> --diff, --diff-alignment, --diff-timeout, #> --ignore-case, --ignore-whitespace. #> --diff <set1> <set2> Compute differences in code and comments between #> source file(s) of <set1> and <set2>. The inputs #> may be any mix of files, directories, archives, #> or git commit hashes. Use --diff-alignment to #> generate a list showing which file pairs where #> compared. See also --count-and-diff, --diff-alignment, #> --diff-timeout, --ignore-case, --ignore-whitespace. #> --diff-timeout <N> Ignore files which take more than <N> seconds #> to process. Default is 10 seconds. Setting <N> #> to 0 allows unlimited time. (Large files with many #> repeated lines can cause Algorithm::Diff::sdiff() #> to take hours.) #> --follow-links [Unix only] Follow symbolic links to directories #> (sym links to files are always followed). #> --force-lang=<lang>[,<ext>] #> Process all files that have a <ext> extension #> with the counter for language <lang>. For #> example, to count all .f files with the #> Fortran 90 counter (which expects files to #> end with .f90) instead of the default Fortran 77 #> counter, use #> --force-lang="Fortran 90",f #> If <ext> is omitted, every file will be counted #> with the <lang> counter. This option can be #> specified multiple times (but that is only #> useful when <ext> is given each time). #> See also --script-lang, --lang-no-ext. #> --force-lang-def=<file> Load language processing filters from <file>, #> then use these filters instead of the built-in #> filters. Note: languages which map to the same #> file extension (for example: #> MATLAB/Mathematica/Objective C/MUMPS/Mercury; #> Pascal/PHP; Lisp/OpenCL; Lisp/Julia; Perl/Prolog) #> will be ignored as these require additional #> processing that is not expressed in language #> definition files. Use --read-lang-def to define #> new language filters without replacing built-in #> filters (see also --write-lang-def, #> --write-lang-def-incl-dup). #> --git Forces the inputs to be interpreted as git targets #> (commit hashes, branch names, et cetera) if these #> are not first identified as file or directory #> names. This option overrides the --vcs=git logic #> if this is given; in other words, --git gets its #> list of files to work on directly from git using #> the hash or branch name rather than from #> 'git ls-files'. This option can be used with #> --diff to perform line count diffs between git #> commits, or between a git commit and a file, #> directory, or archive. Use -v/--verbose to see #> the git system commands cloc issues. #> --ignore-whitespace Ignore horizontal white space when comparing files #> with --diff. See also --ignore-case. #> --ignore-case Ignore changes in case; consider upper- and lower- #> case letters equivalent when comparing files with #> --diff. See also --ignore-whitespace. #> --lang-no-ext=<lang> Count files without extensions using the <lang> #> counter. This option overrides internal logic #> for files without extensions (where such files #> are checked against known scripting languages #> by examining the first line for #!). See also #> --force-lang, --script-lang. #> --max-file-size=<MB> Skip files larger than <MB> megabytes when #> traversing directories. By default, <MB>=100. #> cloc's memory requirement is roughly twenty times #> larger than the largest file so running with #> files larger than 100 MB on a computer with less #> than 2 GB of memory will cause problems. #> Note: this check does not apply to files #> explicitly passed as command line arguments. #> --no-autogen[=list] Ignore files generated by code-production systems #> such as GNU autoconf. To see a list of these files #> (then exit), run with --no-autogen list #> See also --autoconf. #> --original-dir [Only effective in combination with #> --strip-comments] Write the stripped files #> to the same directory as the original files. #> --read-binary-files Process binary files in addition to text files. #> This is usually a bad idea and should only be #> attempted with text files that have embedded #> binary data. #> --read-lang-def=<file> Load new language processing filters from <file> #> and merge them with those already known to cloc. #> If <file> defines a language cloc already knows #> about, cloc's definition will take precedence. #> Use --force-lang-def to over-ride cloc's #> definitions (see also --write-lang-def, #> --write-lang-def-incl-dup). #> --script-lang=<lang>,<s> Process all files that invoke <s> as a #! #> scripting language with the counter for language #> <lang>. For example, files that begin with #> #!/usr/local/bin/perl5.8.8 #> will be counted with the Perl counter by using #> --script-lang=Perl,perl5.8.8 #> The language name is case insensitive but the #> name of the script language executable, <s>, #> must have the right case. This option can be #> specified multiple times. See also --force-lang, #> --lang-no-ext. #> --sdir=<dir> Use <dir> as the scratch directory instead of #> letting File::Temp chose the location. Files #> written to this location are not removed at #> the end of the run (as they are with File::Temp). #> --skip-uniqueness Skip the file uniqueness check. This will give #> a performance boost at the expense of counting #> files with identical contents multiple times #> (if such duplicates exist). #> --stdin-name=<file> Give a file name to use to determine the language #> for standard input. (Use - as the input name to #> receive source code via STDIN.) #> --strip-comments=<ext> For each file processed, write to the current #> directory a version of the file which has blank #> and commented lines removed (in-line comments #> persist). The name of each stripped file is the #> original file name with .<ext> appended to it. #> It is written to the current directory unless #> --original-dir is on. #> --strip-str-comments Replace comment markers embedded in strings with #> 'xx'. This attempts to work around a limitation #> in Regexp::Common::Comment where comment markers #> embedded in strings are seen as actual comment #> markers and not strings, often resulting in a #> 'Complex regular subexpression recursion limit' #> warning and incorrect counts. There are two #> disadvantages to using this switch: 1/code count #> performance drops, and 2/code generated with #> --strip-comments will contain different strings #> where ever embedded comments are found. #> --sum-reports Input arguments are report files previously #> created with the --report-file option. Makes #> a cumulative set of results containing the #> sum of data from the individual report files. #> --processes=NUM [Available only on systems with a recent version #> of the Parallel::ForkManager module. Not #> available on Windows.] Sets the maximum number of #> cores that cloc uses. The default value of 0 #> disables multiprocessing. #> --unix Override the operating system autodetection #> logic and run in UNIX mode. See also #> --windows, --show-os. #> --use-sloccount If SLOCCount is installed, use its compiled #> executables c_count, java_count, pascal_count, #> php_count, and xml_count instead of cloc's #> counters. SLOCCount's compiled counters are #> substantially faster than cloc's and may give #> a performance improvement when counting projects #> with large files. However, these cloc-specific #> features will not be available: --diff, #> --count-and-diff, --strip-comments, --unicode. #> --windows Override the operating system autodetection #> logic and run in Microsoft Windows mode. #> See also --unix, --show-os. #> #> Filter Options #> --exclude-dir=<D1>[,D2,] Exclude the given comma separated directories #> D1, D2, D3, et cetera, from being scanned. For #> example --exclude-dir=.cache,test will skip #> all files and subdirectories that have /.cache/ #> or /test/ as their parent directory. #> Directories named .bzr, .cvs, .hg, .git, .svn, #> and .snapshot are always excluded. #> This option only works with individual directory #> names so including file path separators is not #> allowed. Use --fullpath and --not-match-d=<regex> #> to supply a regex matching multiple subdirectories. #> --exclude-ext=<ext1>[,<ext2>[...]] #> Do not count files having the given file name #> extensions. #> --exclude-lang=<L1>[,L2[...]] #> Exclude the given comma separated languages #> L1, L2, L3, et cetera, from being counted. #> --exclude-list-file=<file> Ignore files and/or directories whose names #> appear in <file>. <file> should have one file #> name per line. Only exact matches are ignored; #> relative path names will be resolved starting from #> the directory where cloc is invoked. #> See also --list-file. #> --fullpath Modifies the behavior of --match-f, --not-match-f, #> and --not-match-d to include the file's path #> in the regex, not just the file's basename. #> (This does not expand each file to include its #> absolute path, instead it uses as much of #> the path as is passed in to cloc.) #> Note: --match-d always looks at the full #> path and therefore is unaffected by --fullpath. #> --include-ext=<ext1>[,ext2[...]] #> Count only languages having the given comma #> separated file extensions. Use --show-ext to #> see the recognized extensions. #> --include-lang=<L1>[,L2[...]] #> Count only the given comma separated languages #> L1, L2, L3, et cetera. Use --show-lang to see #> the list of recognized languages. #> --match-d=<regex> Only count files in directories matching the Perl #> regex. For example #> --match-d='/(src|include)/' #> only counts files in directories containing #> /src/ or /include/. Unlike --not-match-d, #> --match-f, and --not-match-f, --match-d always #> compares the fully qualified path against the #> regex. #> --not-match-d=<regex> Count all files except those in directories #> matching the Perl regex. Only the trailing #> directory name is compared, for example, when #> counting in /usr/local/lib, only 'lib' is #> compared to the regex. #> Add --fullpath to compare parent directories to #> the regex. #> Do not include file path separators at the #> beginning or end of the regex. #> --match-f=<regex> Only count files whose basenames match the Perl #> regex. For example #> --match-f='^[Ww]idget' #> only counts files that start with Widget or widget. #> Add --fullpath to include parent directories #> in the regex instead of just the basename. #> --not-match-f=<regex> Count all files except those whose basenames #> match the Perl regex. Add --fullpath to include #> parent directories in the regex instead of just #> the basename. #> --skip-archive=<regex> Ignore files that end with the given Perl regular #> expression. For example, if given #> --skip-archive='(zip|tar(.(gz|Z|bz2|xz|7z))?)' #> the code will skip files that end with .zip, #> .tar, .tar.gz, .tar.Z, .tar.bz2, .tar.xz, and #> .tar.7z. #> --skip-win-hidden On Windows, ignore hidden files. #> #> Debug Options #> --categorized=<file> Save names of categorized files to <file>. #> --counted=<file> Save names of processed source files to <file>. #> --diff-alignment=<file> Write to <file> a list of files and file pairs #> showing which files were added, removed, and/or #> compared during a run with --diff. This switch #> forces the --diff mode on. #> --explain=<lang> Print the filters used to remove comments for #> language <lang> and exit. In some cases the #> filters refer to Perl subroutines rather than #> regular expressions. An examination of the #> source code may be needed for further explanation. #> --help Print this usage information and exit. #> --found=<file> Save names of every file found to <file>. #> --ignored=<file> Save names of ignored files and the reason they #> were ignored to <file>. #> --print-filter-stages Print processed source code before and after #> each filter is applied. #> --show-ext[=<ext>] Print information about all known (or just the #> given) file extensions and exit. #> --show-lang[=<lang>] Print information about all known (or just the #> given) languages and exit. #> --show-os Print the value of the operating system mode #> and exit. See also --unix, --windows. #> -v[=<n>] Verbose switch (optional numeric value). #> -verbose[=<n>] Long form of -v. #> --version Print the version of this program and exit. #> --write-lang-def=<file> Writes to <file> the language processing filters #> then exits. Useful as a first step to creating #> custom language definitions. Note: languages which #> map to the same file extension will be excluded. #> (See also --force-lang-def, --read-lang-def). #> --write-lang-def-incl-dup=<file> #> Same as --write-lang-def, but includes duplicated #> extensions. This generates a problematic language #> definition file because cloc will refuse to use #> it until duplicates are removed. #> #> Output Options #> --3 Print third-generation language output. #> (This option can cause report summation to fail #> if some reports were produced with this option #> while others were produced without it.) #> --by-percent X Instead of comment and blank line counts, show #> these values as percentages based on the value #> of X in the denominator: #> X = 'c' -> # lines of code #> X = 'cm' -> # lines of code + comments #> X = 'cb' -> # lines of code + blanks #> X = 'cmb' -> # lines of code + comments + blanks #> For example, if using method 'c' and your code #> has twice as many lines of comments as lines #> of code, the value in the comment column will #> be 200%. The code column remains a line count. #> --csv Write the results as comma separated values. #> --csv-delimiter=<C> Use the character <C> as the delimiter for comma #> separated files instead of ,. This switch forces #> --file-encoding=<E> Write output files using the <E> encoding instead of #> the default ASCII (<E> = 'UTF-7'). Examples: 'UTF-16', #> 'euc-kr', 'iso-8859-16'. Known encodings can be #> printed with #> perl -MEncode -e 'print join("\n", Encode->encodings(":all")), "\n"' #> --hide-rate Do not show line and file processing rates in the #> output header. This makes output deterministic. #> --json Write the results as JavaScript Object Notation #> (JSON) formatted output. #> --md Write the results as Markdown-formatted text. #> --out=<file> Synonym for --report-file=<file>. #> --progress-rate=<n> Show progress update after every <n> files are #> processed (default <n>=100). Set <n> to 0 to #> suppress progress output (useful when redirecting #> output to STDOUT). #> --quiet Suppress all information messages except for #> the final report. #> --report-file=<file> Write the results to <file> instead of STDOUT. #> --sql=<file> Write results as SQL create and insert statements #> which can be read by a database program such as #> SQLite. If <file> is -, output is sent to STDOUT. #> --sql-append Append SQL insert statements to the file specified #> by --sql and do not generate table creation #> statements. Only valid with the --sql option. #> --sql-project=<name> Use <name> as the project identifier for the #> current run. Only valid with the --sql option. #> --sql-style=<style> Write SQL statements in the given style instead #> of the default SQLite format. Styles include #> 'Oracle' and 'Named_Columns'. #> --sum-one For plain text reports, show the SUM: output line #> even if only one input file is processed. #> --xml Write the results in XML. #> --xsl=<file> Reference <file> as an XSL stylesheet within #> the XML output. If <file> is 1 (numeric one), #> writes a default stylesheet, cloc.xsl (or #> cloc-diff.xsl if --diff is also given). #> This switch forces --xml on. #> --yaml Write the results in YAML. #># or use the helper version of the above cloc_help()#> #> Usage: cloc.pl [options] <file(s)/dir(s)/git hash(es)> | <set 1> <set 2> | <report files> #> #> Count, or compute differences of, physical lines of source code in the #> given files (may be archives such as compressed tarballs or zip files, #> or git commit hashes or branch names) and/or recursively below the #> given directories. #> #> Input Options #> --extract-with=<cmd> This option is only needed if cloc is unable #> to figure out how to extract the contents of #> the input file(s) by itself. #> Use <cmd> to extract binary archive files (e.g.: #> .tar.gz, .zip, .Z). Use the literal '>FILE<' as #> a stand-in for the actual file(s) to be #> extracted. For example, to count lines of code #> in the input files #> gcc-4.2.tar.gz perl-5.8.8.tar.gz #> on Unix use #> --extract-with='gzip -dc >FILE< | tar xf -' #> or, if you have GNU tar, #> --extract-with='tar zxf >FILE<' #> and on Windows use, for example: #> --extract-with="\"c:\Program Files\WinZip\WinZip32.exe\" -e -o >FILE< ." #> (if WinZip is installed there). #> --list-file=<file> Take the list of file and/or directory names to #> process from <file>, which has one file/directory #> name per line. Only exact matches are counted; #> relative path names will be resolved starting from #> the directory where cloc is invoked. #> See also --exclude-list-file. #> --vcs=<VCS> Invoke a system call to <VCS> to obtain a list of #> files to work on. If <VCS> is 'git', then will #> invoke 'git ls-files' to get a file list and #> 'git submodule status' to get a list of submodules #> whose contents will be ignored. See also --git #> which accepts git commit hashes and branch names. #> If <VCS> is 'svn' then will invoke 'svn list -R'. #> The primary benefit is that cloc will then skip #> files explicitly excluded by the versioning tool #> in question, ie, those in .gitignore or have the #> svn:ignore property. #> Alternatively <VCS> may be any system command #> that generates a list of files. #> Note: cloc must be in a directory which can read #> the files as they are returned by <VCS>. cloc will #> not download files from remote repositories. #> 'svn list -R' may refer to a remote repository #> to obtain file names (and therefore may require #> authentication to the remote repository), but #> the files themselves must be local. #> --unicode Check binary files to see if they contain Unicode #> expanded ASCII text. This causes performance to #> drop noticeably. #> #> Processing Options #> --autoconf Count .in files (as processed by GNU autoconf) of #> recognized languages. See also --no-autogen. #> --by-file Report results for every source file encountered. #> --by-file-by-lang Report results for every source file encountered #> in addition to reporting by language. #> --config <file> Read command line switches from <file> instead of #> the default location of /Users/bob/.config/cloc/options.txt. #> The file should contain one switch, along with #> arguments (if any), per line. Blank lines and lines #> beginning with '#' are skipped. Options given on #> the command line take priority over entries read from #> the file. #> --count-and-diff <set1> <set2> #> First perform direct code counts of source file(s) #> of <set1> and <set2> separately, then perform a diff #> of these. Inputs may be pairs of files, directories, #> or archives. If --out or --report-file is given, #> three output files will be created, one for each #> of the two counts and one for the diff. See also #> --diff, --diff-alignment, --diff-timeout, #> --ignore-case, --ignore-whitespace. #> --diff <set1> <set2> Compute differences in code and comments between #> source file(s) of <set1> and <set2>. The inputs #> may be any mix of files, directories, archives, #> or git commit hashes. Use --diff-alignment to #> generate a list showing which file pairs where #> compared. See also --count-and-diff, --diff-alignment, #> --diff-timeout, --ignore-case, --ignore-whitespace. #> --diff-timeout <N> Ignore files which take more than <N> seconds #> to process. Default is 10 seconds. Setting <N> #> to 0 allows unlimited time. (Large files with many #> repeated lines can cause Algorithm::Diff::sdiff() #> to take hours.) #> --follow-links [Unix only] Follow symbolic links to directories #> (sym links to files are always followed). #> --force-lang=<lang>[,<ext>] #> Process all files that have a <ext> extension #> with the counter for language <lang>. For #> example, to count all .f files with the #> Fortran 90 counter (which expects files to #> end with .f90) instead of the default Fortran 77 #> counter, use #> --force-lang="Fortran 90",f #> If <ext> is omitted, every file will be counted #> with the <lang> counter. This option can be #> specified multiple times (but that is only #> useful when <ext> is given each time). #> See also --script-lang, --lang-no-ext. #> --force-lang-def=<file> Load language processing filters from <file>, #> then use these filters instead of the built-in #> filters. Note: languages which map to the same #> file extension (for example: #> MATLAB/Mathematica/Objective C/MUMPS/Mercury; #> Pascal/PHP; Lisp/OpenCL; Lisp/Julia; Perl/Prolog) #> will be ignored as these require additional #> processing that is not expressed in language #> definition files. Use --read-lang-def to define #> new language filters without replacing built-in #> filters (see also --write-lang-def, #> --write-lang-def-incl-dup). #> --git Forces the inputs to be interpreted as git targets #> (commit hashes, branch names, et cetera) if these #> are not first identified as file or directory #> names. This option overrides the --vcs=git logic #> if this is given; in other words, --git gets its #> list of files to work on directly from git using #> the hash or branch name rather than from #> 'git ls-files'. This option can be used with #> --diff to perform line count diffs between git #> commits, or between a git commit and a file, #> directory, or archive. Use -v/--verbose to see #> the git system commands cloc issues. #> --ignore-whitespace Ignore horizontal white space when comparing files #> with --diff. See also --ignore-case. #> --ignore-case Ignore changes in case; consider upper- and lower- #> case letters equivalent when comparing files with #> --diff. See also --ignore-whitespace. #> --lang-no-ext=<lang> Count files without extensions using the <lang> #> counter. This option overrides internal logic #> for files without extensions (where such files #> are checked against known scripting languages #> by examining the first line for #!). See also #> --force-lang, --script-lang. #> --max-file-size=<MB> Skip files larger than <MB> megabytes when #> traversing directories. By default, <MB>=100. #> cloc's memory requirement is roughly twenty times #> larger than the largest file so running with #> files larger than 100 MB on a computer with less #> than 2 GB of memory will cause problems. #> Note: this check does not apply to files #> explicitly passed as command line arguments. #> --no-autogen[=list] Ignore files generated by code-production systems #> such as GNU autoconf. To see a list of these files #> (then exit), run with --no-autogen list #> See also --autoconf. #> --original-dir [Only effective in combination with #> --strip-comments] Write the stripped files #> to the same directory as the original files. #> --read-binary-files Process binary files in addition to text files. #> This is usually a bad idea and should only be #> attempted with text files that have embedded #> binary data. #> --read-lang-def=<file> Load new language processing filters from <file> #> and merge them with those already known to cloc. #> If <file> defines a language cloc already knows #> about, cloc's definition will take precedence. #> Use --force-lang-def to over-ride cloc's #> definitions (see also --write-lang-def, #> --write-lang-def-incl-dup). #> --script-lang=<lang>,<s> Process all files that invoke <s> as a #! #> scripting language with the counter for language #> <lang>. For example, files that begin with #> #!/usr/local/bin/perl5.8.8 #> will be counted with the Perl counter by using #> --script-lang=Perl,perl5.8.8 #> The language name is case insensitive but the #> name of the script language executable, <s>, #> must have the right case. This option can be #> specified multiple times. See also --force-lang, #> --lang-no-ext. #> --sdir=<dir> Use <dir> as the scratch directory instead of #> letting File::Temp chose the location. Files #> written to this location are not removed at #> the end of the run (as they are with File::Temp). #> --skip-uniqueness Skip the file uniqueness check. This will give #> a performance boost at the expense of counting #> files with identical contents multiple times #> (if such duplicates exist). #> --stdin-name=<file> Give a file name to use to determine the language #> for standard input. (Use - as the input name to #> receive source code via STDIN.) #> --strip-comments=<ext> For each file processed, write to the current #> directory a version of the file which has blank #> and commented lines removed (in-line comments #> persist). The name of each stripped file is the #> original file name with .<ext> appended to it. #> It is written to the current directory unless #> --original-dir is on. #> --strip-str-comments Replace comment markers embedded in strings with #> 'xx'. This attempts to work around a limitation #> in Regexp::Common::Comment where comment markers #> embedded in strings are seen as actual comment #> markers and not strings, often resulting in a #> 'Complex regular subexpression recursion limit' #> warning and incorrect counts. There are two #> disadvantages to using this switch: 1/code count #> performance drops, and 2/code generated with #> --strip-comments will contain different strings #> where ever embedded comments are found. #> --sum-reports Input arguments are report files previously #> created with the --report-file option. Makes #> a cumulative set of results containing the #> sum of data from the individual report files. #> --processes=NUM [Available only on systems with a recent version #> of the Parallel::ForkManager module. Not #> available on Windows.] Sets the maximum number of #> cores that cloc uses. The default value of 0 #> disables multiprocessing. #> --unix Override the operating system autodetection #> logic and run in UNIX mode. See also #> --windows, --show-os. #> --use-sloccount If SLOCCount is installed, use its compiled #> executables c_count, java_count, pascal_count, #> php_count, and xml_count instead of cloc's #> counters. SLOCCount's compiled counters are #> substantially faster than cloc's and may give #> a performance improvement when counting projects #> with large files. However, these cloc-specific #> features will not be available: --diff, #> --count-and-diff, --strip-comments, --unicode. #> --windows Override the operating system autodetection #> logic and run in Microsoft Windows mode. #> See also --unix, --show-os. #> #> Filter Options #> --exclude-dir=<D1>[,D2,] Exclude the given comma separated directories #> D1, D2, D3, et cetera, from being scanned. For #> example --exclude-dir=.cache,test will skip #> all files and subdirectories that have /.cache/ #> or /test/ as their parent directory. #> Directories named .bzr, .cvs, .hg, .git, .svn, #> and .snapshot are always excluded. #> This option only works with individual directory #> names so including file path separators is not #> allowed. Use --fullpath and --not-match-d=<regex> #> to supply a regex matching multiple subdirectories. #> --exclude-ext=<ext1>[,<ext2>[...]] #> Do not count files having the given file name #> extensions. #> --exclude-lang=<L1>[,L2[...]] #> Exclude the given comma separated languages #> L1, L2, L3, et cetera, from being counted. #> --exclude-list-file=<file> Ignore files and/or directories whose names #> appear in <file>. <file> should have one file #> name per line. Only exact matches are ignored; #> relative path names will be resolved starting from #> the directory where cloc is invoked. #> See also --list-file. #> --fullpath Modifies the behavior of --match-f, --not-match-f, #> and --not-match-d to include the file's path #> in the regex, not just the file's basename. #> (This does not expand each file to include its #> absolute path, instead it uses as much of #> the path as is passed in to cloc.) #> Note: --match-d always looks at the full #> path and therefore is unaffected by --fullpath. #> --include-ext=<ext1>[,ext2[...]] #> Count only languages having the given comma #> separated file extensions. Use --show-ext to #> see the recognized extensions. #> --include-lang=<L1>[,L2[...]] #> Count only the given comma separated languages #> L1, L2, L3, et cetera. Use --show-lang to see #> the list of recognized languages. #> --match-d=<regex> Only count files in directories matching the Perl #> regex. For example #> --match-d='/(src|include)/' #> only counts files in directories containing #> /src/ or /include/. Unlike --not-match-d, #> --match-f, and --not-match-f, --match-d always #> compares the fully qualified path against the #> regex. #> --not-match-d=<regex> Count all files except those in directories #> matching the Perl regex. Only the trailing #> directory name is compared, for example, when #> counting in /usr/local/lib, only 'lib' is #> compared to the regex. #> Add --fullpath to compare parent directories to #> the regex. #> Do not include file path separators at the #> beginning or end of the regex. #> --match-f=<regex> Only count files whose basenames match the Perl #> regex. For example #> --match-f='^[Ww]idget' #> only counts files that start with Widget or widget. #> Add --fullpath to include parent directories #> in the regex instead of just the basename. #> --not-match-f=<regex> Count all files except those whose basenames #> match the Perl regex. Add --fullpath to include #> parent directories in the regex instead of just #> the basename. #> --skip-archive=<regex> Ignore files that end with the given Perl regular #> expression. For example, if given #> --skip-archive='(zip|tar(.(gz|Z|bz2|xz|7z))?)' #> the code will skip files that end with .zip, #> .tar, .tar.gz, .tar.Z, .tar.bz2, .tar.xz, and #> .tar.7z. #> --skip-win-hidden On Windows, ignore hidden files. #> #> Debug Options #> --categorized=<file> Save names of categorized files to <file>. #> --counted=<file> Save names of processed source files to <file>. #> --diff-alignment=<file> Write to <file> a list of files and file pairs #> showing which files were added, removed, and/or #> compared during a run with --diff. This switch #> forces the --diff mode on. #> --explain=<lang> Print the filters used to remove comments for #> language <lang> and exit. In some cases the #> filters refer to Perl subroutines rather than #> regular expressions. An examination of the #> source code may be needed for further explanation. #> --help Print this usage information and exit. #> --found=<file> Save names of every file found to <file>. #> --ignored=<file> Save names of ignored files and the reason they #> were ignored to <file>. #> --print-filter-stages Print processed source code before and after #> each filter is applied. #> --show-ext[=<ext>] Print information about all known (or just the #> given) file extensions and exit. #> --show-lang[=<lang>] Print information about all known (or just the #> given) languages and exit. #> --show-os Print the value of the operating system mode #> and exit. See also --unix, --windows. #> -v[=<n>] Verbose switch (optional numeric value). #> -verbose[=<n>] Long form of -v. #> --version Print the version of this program and exit. #> --write-lang-def=<file> Writes to <file> the language processing filters #> then exits. Useful as a first step to creating #> custom language definitions. Note: languages which #> map to the same file extension will be excluded. #> (See also --force-lang-def, --read-lang-def). #> --write-lang-def-incl-dup=<file> #> Same as --write-lang-def, but includes duplicated #> extensions. This generates a problematic language #> definition file because cloc will refuse to use #> it until duplicates are removed. #> #> Output Options #> --3 Print third-generation language output. #> (This option can cause report summation to fail #> if some reports were produced with this option #> while others were produced without it.) #> --by-percent X Instead of comment and blank line counts, show #> these values as percentages based on the value #> of X in the denominator: #> X = 'c' -> # lines of code #> X = 'cm' -> # lines of code + comments #> X = 'cb' -> # lines of code + blanks #> X = 'cmb' -> # lines of code + comments + blanks #> For example, if using method 'c' and your code #> has twice as many lines of comments as lines #> of code, the value in the comment column will #> be 200%. The code column remains a line count. #> --csv Write the results as comma separated values. #> --csv-delimiter=<C> Use the character <C> as the delimiter for comma #> separated files instead of ,. This switch forces #> --file-encoding=<E> Write output files using the <E> encoding instead of #> the default ASCII (<E> = 'UTF-7'). Examples: 'UTF-16', #> 'euc-kr', 'iso-8859-16'. Known encodings can be #> printed with #> perl -MEncode -e 'print join("\n", Encode->encodings(":all")), "\n"' #> --hide-rate Do not show line and file processing rates in the #> output header. This makes output deterministic. #> --json Write the results as JavaScript Object Notation #> (JSON) formatted output. #> --md Write the results as Markdown-formatted text. #> --out=<file> Synonym for --report-file=<file>. #> --progress-rate=<n> Show progress update after every <n> files are #> processed (default <n>=100). Set <n> to 0 to #> suppress progress output (useful when redirecting #> output to STDOUT). #> --quiet Suppress all information messages except for #> the final report. #> --report-file=<file> Write the results to <file> instead of STDOUT. #> --sql=<file> Write results as SQL create and insert statements #> which can be read by a database program such as #> SQLite. If <file> is -, output is sent to STDOUT. #> --sql-append Append SQL insert statements to the file specified #> by --sql and do not generate table creation #> statements. Only valid with the --sql option. #> --sql-project=<name> Use <name> as the project identifier for the #> current run. Only valid with the --sql option. #> --sql-style=<style> Write SQL statements in the given style instead #> of the default SQLite format. Styles include #> 'Oracle' and 'Named_Columns'. #> --sum-one For plain text reports, show the SUM: output line #> even if only one input file is processed. #> --xml Write the results in XML. #> --xsl=<file> Reference <file> as an XSL stylesheet within #> the XML output. If <file> is 1 (numeric one), #> writes a default stylesheet, cloc.xsl (or #> cloc-diff.xsl if --diff is also given). #> This switch forces --xml on. #> --yaml Write the results in YAML. #># show the OS type cloc_call("--show-os")#> UNIX# shortcut equivalent cloc_os()#> [1] "UNIX"#> UNIX#> [1] "UNIX"# shortcut of the above with no echo and only returning trimmed stdout cloc_os()#> [1] "UNIX"# get version of cloc.pl script provided with the package cloc_version()#> [1] "1.80"


Global Real Estate Supply and Demand modeling
Tying active building capacity and attendance across 6 systems managed by 6 teams, inconsistencies are bound to happen. Supply and Demand bridges those gaps by integrating 2 new data sources and leveraging new methods to model historical through future supply and demand. It also highlights trends in active attendance to allow plan for more dynamic scenarios.
A deeper dive
Once upon a time, in a bustling city, Meta, a global corporation, embarked on an ambitious project named "Supply and Demand" as part of their Portfolio Optimization program. The goal of the program was to optimize Meta's global corporate real estate portfolio, improve data accuracy, and align with their evolving business needs.
The project faced a significant challenge due to inconsistencies in tying active building capacity and attendance across six systems managed by six different teams within Meta. These inconsistencies were bound to happen given the decentralized nature of the systems. Recognizing the need to bridge these gaps and ensure a unified view, the Supply and Demand project was launched.
The Supply and Demand project took a holistic approach to address these challenges. It integrated two new data sources and introduced new methods to model historical and future supply and demand. By incorporating additional data, the project aimed to enhance the accuracy and reliability of forecasting and planning within Meta's global real estate portfolio.
One of the key features of the Supply and Demand solution was its ability to highlight trends in active attendance. By analyzing historical attendance data, the project team could identify patterns and fluctuations in utilization across various locations and offices. This information allowed Meta to plan for more dynamic scenarios, enabling them to optimize space allocation and make informed decisions about future real estate needs.
The project team collaborated closely with the teams responsible for managing the six different systems within Meta. By fostering effective communication and coordination, they ensured that the integration of data sources and the implementation of new methods were aligned with the unique requirements and capabilities of each system.
Throughout the project, extensive testing and validation processes were conducted to ensure the accuracy and reliability of the Supply and Demand solution. The project team rigorously tested the integration of data sources, the modeling algorithms, and the overall functionality of the solution. This approach allowed Meta to have confidence in the insights and recommendations generated by the system.
As the Supply and Demand project progressed, Meta witnessed the transformation of their real estate management practices. The unified view provided by the solution empowered decision-makers to make informed choices based on accurate data. With a clearer understanding of supply and demand dynamics and attendance trends, Meta could optimize their portfolio, streamline operations, and strategically plan for the future.
The success of the Supply and Demand project not only strengthened Meta's global corporate real estate portfolio but also positioned them as industry leaders in leveraging data-driven insights for optimal real estate management. This project served as a foundation for continuous improvement, as Meta embraced innovation and actively sought opportunities to further enhance their portfolio optimization practices.
And so, Meta's journey towards a unified and data-driven approach to global corporate real estate management continued, marking a new chapter in their success story.
Below is what the full aggregate model looked like. To see it developed in full:
Follow this link to check it out on GitHub!
Image Gallery


Data Structures | |
| struct | CSL_DssVidPipeCfg |
| Configuration for DSS Video Pipe. More... | |
| struct | CSL_DssVidPipeDmaCfg |
| DSS Video Pipe DMA related Config parameters. More... | |
| struct | CSL_DssVidPipeLumaCfg |
| DSS Video Pipe Luma Key Config parameters. More... | |
| struct | CSL_DssVidPipeAlphaCfg |
| DSS Video Pipe Alpha Config parameters. More... | |
| struct | CSL_DssVidPipeVC1Cfg |
| DSS Video Pipe VC1 configuration. More... | |
| struct | CSL_DssVidPipeMFlagCfg |
| DSS Video Pipe MFLAG Config parameters. More... | |
Typedefs | |
| typedef CSL_dss_vidRegs | CSL_dss_pipeRegs |
| DSS Video Pipe Registers. More... | |
| typedef CSL_dss_vid1Regs | CSL_dss_pipeRegs |
| DSS Video Pipe Registers. More... | |
Functions | |
| int32_t | CSL_dssVidPipeSetConfig (CSL_dss_pipeRegs *pipeRegs, const CSL_DssVidPipeCfg *pipeCfg, const CSL_DssVidPipeVC1Cfg *vc1Cfg) |
| Configure the Video Pipe. More... | |
| void | CSL_dssVidPipeSetDmaConfig (CSL_dss_pipeRegs *pipeRegs, const CSL_DssVidPipeDmaCfg *dmaCfg) |
| Configure the Video Pipe DMA parameters. More... | |
| void | CSL_dssVidPipeEnableTransparency (CSL_dss_pipeRegs *pipeRegs, const CSL_DssVidPipeLumaCfg *lumaCfg) |
| Enable the Luma Key transparency matching and set luma params. More... | |
| void | CSL_dssVidPipeSetAlphaConfig (CSL_dss_pipeRegs *pipeRegs, const CSL_DssVidPipeAlphaCfg *alphaCfg) |
| Set DSS Video Pipe Alpha parameters. More... | |
| void | CSL_dssVidPipeSetCSCCoeff (CSL_dss_pipeRegs *pipeRegs, const CSL_DssCscCoeff *coeff) |
| Configure the coefficients for Color Space Conversion. More... | |
| void | CSL_dssVidPipeSetBuffAddr (CSL_dss_pipeRegs *pipeRegs, uint32_t field, uint64_t baseAddrRGBY, uint64_t baseAddrUV) |
| Set the video buffer address. More... | |
| void | CSL_dssVidPipeEnable (CSL_dss_pipeRegs *pipeRegs, uint32_t enable) |
| Enable the DSS Video Pipe. More... | |
| void | CSL_dssVidPipeSetSafetySignSeedVal (CSL_dss_pipeRegs *pipeRegs, uint32_t signSeedVal) |
| Set the seed value for the signature calculation. More... | |
| void | CSL_dssVidPipeSetSafetyReferenceSign (CSL_dss_pipeRegs *pipeRegs, uint32_t referenceSign) |
| Set the reference safety signature for data correctness check. More... | |
| void | CSL_dssVidPipeSetSafetyChkConfig (CSL_dss_pipeRegs *pipeRegs, const CSL_DssSafetyChkCfg *safetyCfg) |
| Configure the Safety Check Params. More... | |
| uint32_t | CSL_dssVidPipeGetSafetySign (const CSL_dss_pipeRegs *pipeRegs) |
| Get the Safety Signature. More... | |
| void | CSL_dssVidPipeSetMflagConfig (CSL_dss_pipeRegs *pipeRegs, const CSL_DssVidPipeMFlagCfg *mflagCfg) |
| Set the MFLAG configuration. More... | |
| static void | CSL_dssVidPipeCfgInit (CSL_DssVidPipeCfg *pipeCfg) |
| CSL_DssVidPipeCfg structure init function. More... | |
| static void | CSL_dssVidPipeDmaCfgInit (CSL_DssVidPipeDmaCfg *dmaCfg) |
| CSL_DssVidPipeDmaCfg structure init function. More... | |
| static void | CSL_dssVidPipeLumaCfgInit (CSL_DssVidPipeLumaCfg *lumaCfg) |
| CSL_DssVidPipeLumaCfg structure init function. More... | |
| static void | CSL_dssVidPipeAlphaCfgInit (CSL_DssVidPipeAlphaCfg *alphaCfg) |
| CSL_DssVidPipeAlphaCfg structure init function. More... | |
| static void | CSL_dssVidPipeVC1CfgInit (CSL_DssVidPipeVC1Cfg *vc1Cfg) |
| CSL_DssVidPipeVC1Cfg structure init function. More... | |
| static void | CSL_dssVidPipeMFlagCfgInit (CSL_DssVidPipeMFlagCfg *mflagCfg) |
| CSL_DssVidPipeMFlagCfg structure init function. More... | |
| void | CSL_dssVidPipeSetCropConfig (CSL_dss_pipeRegs *pipeRegs, const Fvid2_EdgeCropConfig *cropCfg, uint32_t cropEnable) |
| Enable/disable the crop in DSS Video Pipe. More... | |
DSS Video Pipe YUV Alignment | |
| #define | CSL_DSS_VID_PIPE_YUV_ALIGN_LSB ((uint32_t) CSL_DSS_VID_ATTRIBUTES2_YUV_ALIGN_VAL_LSB) |
| Data is LSB aligned (MSB unused) | |
| #define | CSL_DSS_VID_PIPE_YUV_ALIGN_MSB ((uint32_t) CSL_DSS_VID_ATTRIBUTES2_YUV_ALIGN_VAL_MSB) |
| Data is MSB aligned (LSB unused) | |
DSS Video Pipe Scaler Value | |
| #define | CSL_DSS_VID_PIPE_SC_DISABLED ((uint32_t) CSL_DSS_VID_ATTRIBUTES_RESIZEENABLE_VAL_RESIZEPROC) |
| Scaler is disabled. | |
| #define | CSL_DSS_VID_PIPE_SC_ENABLED_H ((uint32_t) CSL_DSS_VID_ATTRIBUTES_RESIZEENABLE_VAL_HRESIZE) |
| Horizontal scaling is enabled. | |
| #define | CSL_DSS_VID_PIPE_SC_ENABLED_V ((uint32_t) CSL_DSS_VID_ATTRIBUTES_RESIZEENABLE_VAL_VRESIZE) |
| Vertical scaling is enabled. | |
| #define | CSL_DSS_VID_PIPE_SC_ENABLED_HV ((uint32_t) CSL_DSS_VID_ATTRIBUTES_RESIZEENABLE_VAL_HVRESIZE) |
| Both horizontal and vertical scaling is enabled. | |
DSS Video Pipe Preload Control Value | |
DSS Video Pipe Preload Value can be fixed HW value or SW determined | |
| #define | CSL_DSS_VID_PIPE_PRELOAD_CONTROL_SW ((uint32_t) CSL_DSS_VID_ATTRIBUTES_BUFPRELOAD_VAL_DEFVAL) |
| Value is defined by preload register. | |
| #define | CSL_DSS_VID_PIPE_PRELOAD_CONTROL_HW ((uint32_t) CSL_DSS_VID_ATTRIBUTES_BUFPRELOAD_VAL_HIGHTHRES) |
| HW pre-fetches pixels up to high threshold value. | |
DSS Video Pipe Priority Value | |
| #define | CSL_DSS_VID_PIPE_PRIORITY_NORMAL ((uint32_t) CSL_DSS_VID_ATTRIBUTES_ARBITRATION_VAL_NORMALPRIO) |
| Priority of video pipeline is normal. | |
| #define | CSL_DSS_VID_PIPE_PRIORITY_HIGH ((uint32_t) CSL_DSS_VID_ATTRIBUTES_ARBITRATION_VAL_HIGHPRIO) |
| Priority of video pipeline is high. | |
DSS Video Pipe Self Refresh Mode Control | |
| #define | CSL_DSS_VID_PIPE_REFRESH_CONTROL_SW ((uint32_t) CSL_DSS_VID_ATTRIBUTES_SELFREFRESHAUTO_VAL_SELFREFRESHAUTODIS) |
| Transition is controlled by SW. | |
| #define | CSL_DSS_VID_PIPE_REFRESH_CONTROL_HW ((uint32_t) CSL_DSS_VID_ATTRIBUTES_SELFREFRESHAUTO_VAL_SELFREFRESHAUTOEN) |
| Transition is controlled by HW. | |
DSS Video Pipe YUV Alignment | |
| #define | CSL_DSS_VID_PIPE_YUV_ALIGN_LSB ((uint32_t) CSL_DSS_VID1_ATTRIBUTES2_YUV_ALIGN_VAL_LSB) |
| Data is LSB aligned (MSB unused) | |
| #define | CSL_DSS_VID_PIPE_YUV_ALIGN_MSB ((uint32_t) CSL_DSS_VID1_ATTRIBUTES2_YUV_ALIGN_VAL_MSB) |
| Data is MSB aligned (LSB unused) | |
DSS Video Pipe Scaler Value | |
| #define | CSL_DSS_VID_PIPE_SC_DISABLED ((uint32_t) CSL_DSS_VID1_ATTRIBUTES_RESIZEENABLE_VAL_RESIZEPROC) |
| Scaler is disabled. | |
| #define | CSL_DSS_VID_PIPE_SC_ENABLED_H ((uint32_t) CSL_DSS_VID1_ATTRIBUTES_RESIZEENABLE_VAL_HRESIZE) |
| Horizontal scaling is enabled. | |
| #define | CSL_DSS_VID_PIPE_SC_ENABLED_V ((uint32_t) CSL_DSS_VID1_ATTRIBUTES_RESIZEENABLE_VAL_VRESIZE) |
| Vertical scaling is enabled. | |
| #define | CSL_DSS_VID_PIPE_SC_ENABLED_HV ((uint32_t) CSL_DSS_VID1_ATTRIBUTES_RESIZEENABLE_VAL_HVRESIZE) |
| Both horizontal and vertical scaling is enabled. | |
DSS Video Pipe Preload Control Value | |
DSS Video Pipe Preload Value can be fixed HW value or SW determined | |
| #define | CSL_DSS_VID_PIPE_PRELOAD_CONTROL_SW ((uint32_t) CSL_DSS_VID1_ATTRIBUTES_BUFPRELOAD_VAL_DEFVAL) |
| Value is defined by preload register. | |
| #define | CSL_DSS_VID_PIPE_PRELOAD_CONTROL_HW ((uint32_t) CSL_DSS_VID1_ATTRIBUTES_BUFPRELOAD_VAL_HIGHTHRES) |
| HW pre-fetches pixels up to high threshold value. | |
DSS Video Pipe Priority Value | |
| #define | CSL_DSS_VID_PIPE_PRIORITY_NORMAL ((uint32_t) CSL_DSS_VID1_ATTRIBUTES_ARBITRATION_VAL_NORMALPRIO) |
| Priority of video pipeline is normal. | |
| #define | CSL_DSS_VID_PIPE_PRIORITY_HIGH ((uint32_t) CSL_DSS_VID1_ATTRIBUTES_ARBITRATION_VAL_HIGHPRIO) |
| Priority of video pipeline is high. | |
DSS Video Pipe Self Refresh Mode Control | |
| #define | CSL_DSS_VID_PIPE_REFRESH_CONTROL_SW ((uint32_t) CSL_DSS_VID1_ATTRIBUTES_SELFREFRESHAUTO_VAL_SELFREFRESHAUTODIS) |
| Transition is controlled by SW. | |
| #define | CSL_DSS_VID_PIPE_REFRESH_CONTROL_HW ((uint32_t) CSL_DSS_VID1_ATTRIBUTES_SELFREFRESHAUTO_VAL_SELFREFRESHAUTOEN) |
| Transition is controlled by HW. | |
| typedef CSL_dss_vidRegs CSL_dss_pipeRegs |
DSS Video Pipe Registers.
DSS7 UL has two Video Pipes: VID and VIDL1.  Hence using VID register structure as a generic structure to have common APIs. Caller should not configure VID pipe specific functionality for VIDL1 pipe
| typedef CSL_dss_vid1Regs CSL_dss_pipeRegs |
DSS Video Pipe Registers.
DSS7 has four Video Pipes: VID1, VID2, VIDL1 and VIDL2.  Hence using VID register structure as a generic structure to have common APIs. Caller should not configure VID pipe specific functionality for VIDL pipe
|
inlinestatic |
CSL_DssVidPipeAlphaCfg structure init function.
| alphaCfg | Pointer to CSL_DssVidPipeAlphaCfg structure |
|
inlinestatic |
CSL_DssVidPipeCfg structure init function.
| pipeCfg | Pointer to CSL_DssVidPipeCfg structure |
|
inlinestatic |
CSL_DssVidPipeDmaCfg structure init function.
| dmaCfg | Pointer to CSL_DssVidPipeDmaCfg structure |
| void CSL_dssVidPipeEnable | ( | CSL_dss_pipeRegs * | pipeRegs, |
| uint32_t | enable | ||
| ) |
Enable the DSS Video Pipe.
| pipeRegs | Pointer to a CSL_dss_pipeRegs structure containing the Video Pipe configuration |
| enable | Enable or disable the Video Pipe TRUE: Enable FALSE: Disable |
| void CSL_dssVidPipeEnableTransparency | ( | CSL_dss_pipeRegs * | pipeRegs, |
| const CSL_DssVidPipeLumaCfg * | lumaCfg | ||
| ) |
Enable the Luma Key transparency matching and set luma params.
| pipeRegs | Pointer to a CSL_dss_pipeRegs structure containing the Video Pipe configuration |
| lumaCfg | Pointer to the CSL_DssVidPipeLumaCfg structure. This parameter should not be NULL |
| uint32_t CSL_dssVidPipeGetSafetySign | ( | const CSL_dss_pipeRegs * | pipeRegs | ) |
Get the Safety Signature.
| pipeRegs | Pointer to a CSL_dss_pipeRegs structure containing the Video Pipe configuration |
|
inlinestatic |
CSL_DssVidPipeLumaCfg structure init function.
| lumaCfg | Pointer to CSL_DssVidPipeLumaCfg structure |
|
inlinestatic |
CSL_DssVidPipeMFlagCfg structure init function.
| mflagCfg | Pointer to CSL_DssVidPipeMFlagCfg structure |
| void CSL_dssVidPipeSetAlphaConfig | ( | CSL_dss_pipeRegs * | pipeRegs, |
| const CSL_DssVidPipeAlphaCfg * | alphaCfg | ||
| ) |
Set DSS Video Pipe Alpha parameters.
| pipeRegs | Pointer to a CSL_dss_pipeRegs structure containing the Video Pipe configuration |
| alphaCfg | Pointer to the CSL_DssVidPipeAlphaCfg structure. This parameter should not be NULL |
| void CSL_dssVidPipeSetBuffAddr | ( | CSL_dss_pipeRegs * | pipeRegs, |
| uint32_t | field, | ||
| uint64_t | baseAddrRGBY, | ||
| uint64_t | baseAddrUV | ||
| ) |
Set the video buffer address.
| pipeRegs | Pointer to a CSL_dss_pipeRegs structure containing the Video Pipe configuration |
| field | Top or bottom field. Refer #Fvid2_Fid for values. Top is even field and Bottom is odd |
| baseAddrRGBY | Base address of RGB or Y plane depending on format |
| baseAddrUV | UV base address valid only for YUV420-NV12/NV21 |
| int32_t CSL_dssVidPipeSetConfig | ( | CSL_dss_pipeRegs * | pipeRegs, |
| const CSL_DssVidPipeCfg * | pipeCfg, | ||
| const CSL_DssVidPipeVC1Cfg * | vc1Cfg | ||
| ) |
Configure the Video Pipe.
| pipeRegs | Pointer to a CSL_dss_pipeRegs structure containing the Video Pipe configuration |
| pipeCfg | Pointer to the CSL_DssVidPipeCfg structure. This parameter should not be NULL |
| vc1Cfg | Pointer to the CSL_DssVidPipeVC1Cfg structure. This parameter should not be NULL |
| void CSL_dssVidPipeSetCropConfig | ( | CSL_dss_pipeRegs * | pipeRegs, |
| const Fvid2_EdgeCropConfig * | cropCfg, | ||
| uint32_t | cropEnable | ||
| ) |
Enable/disable the crop in DSS Video Pipe.
| pipeRegs | Pointer to a CSL_dss_pipeRegs structure containing the Video Pipe configuration |
| cropCfg | Pointer to Fvid2_EdgeCropConfig structure. This parameter should not be NULL |
| cropEnable | Enable/disable the crop TRUE: Enable FALSE: Disable |
| void CSL_dssVidPipeSetCSCCoeff | ( | CSL_dss_pipeRegs * | pipeRegs, |
| const CSL_DssCscCoeff * | coeff | ||
| ) |
Configure the coefficients for Color Space Conversion.
| pipeRegs | Pointer to a CSL_dss_pipeRegs structure containing the Video Pipe configuration |
| coeff | Pointer to CSL_DssCscCoeff structure. This parameter should not be NULL |
| void CSL_dssVidPipeSetDmaConfig | ( | CSL_dss_pipeRegs * | pipeRegs, |
| const CSL_DssVidPipeDmaCfg * | dmaCfg | ||
| ) |
Configure the Video Pipe DMA parameters.
| pipeRegs | Pointer to a CSL_dss_pipeRegs structure containing the Video Pipe configuration |
| dmaCfg | Pointer to the CSL_DssVidPipeDmaCfg structure. This parameter should not be NULL |
| void CSL_dssVidPipeSetMflagConfig | ( | CSL_dss_pipeRegs * | pipeRegs, |
| const CSL_DssVidPipeMFlagCfg * | mflagCfg | ||
| ) |
Set the MFLAG configuration.
| pipeRegs | Pointer to a CSL_dss_pipeRegs structure containing the Video Pipe configuration |
| mflagCfg | Pointer to CSL_DssVidPipeMFlagCfg structure. This parameter should not be NULL |
| void CSL_dssVidPipeSetSafetyChkConfig | ( | CSL_dss_pipeRegs * | pipeRegs, |
| const CSL_DssSafetyChkCfg * | safetyCfg | ||
| ) |
Configure the Safety Check Params.
| pipeRegs | Pointer to a CSL_dss_pipeRegs structure containing the Video Pipe configuration |
| safetyCfg | Pointer to CSL_DssSafetyChkCfg structure. This parameter should not be NULL |
| void CSL_dssVidPipeSetSafetyReferenceSign | ( | CSL_dss_pipeRegs * | pipeRegs, |
| uint32_t | referenceSign | ||
| ) |
Set the reference safety signature for data correctness check.
| pipeRegs | Pointer to a CSL_dss_pipeRegs structure containing the Video Pipe configuration |
| referenceSign | Reference Safety Signature |
| void CSL_dssVidPipeSetSafetySignSeedVal | ( | CSL_dss_pipeRegs * | pipeRegs, |
| uint32_t | signSeedVal | ||
| ) |
Set the seed value for the signature calculation.
| pipeRegs | Pointer to a CSL_dss_pipeRegs structure containing the Video Pipe configuration |
| signSeedVal | Signature Seed Value to be Set |
|
inlinestatic |
CSL_DssVidPipeVC1Cfg structure init function.
| vc1Cfg | Pointer to CSL_DssVidPipeVC1Cfg structure |


Key Classes and Methods
Introduction
Ehcache consists of a CacheManager
, which manages caches. Caches contain Elements,
which are essentially name value pairs. Caches are physically implemented, either in-memory or on disk. The logical representations of these components are actualized mostly through the classes discussed below. The methods provided by these classes are largely responsible for providing programmatic access to working with Ehcache.
CacheManager
Creation of, access to, and removal of caches is controlled by the CacheManager
.
CacheManager Creation Modes
CacheManager
supports two creation modes: singleton and instance.
Versions of Ehcache before version 2.5 allowed any number of CacheManagers with the same name (same configuration resource) to exist in a JVM. Therefore, each time new CacheManager(...)
was called, a new CacheManager was created without regard to existing CacheManagers. Calling CacheManager.create(...)
returned the existing singleton CacheManager with the configured name (if it existed) or created the singleton based on the passed-in configuration.
Ehcache 2.5 and higher does not allow multiple CacheManagers with the same name to exist in the same JVM. CacheManager()
constructors creating non-Singleton CacheManagers can violate this rule, causing a NullPointerException. If your code may create multiple CacheManagers of the same name in the same JVM, avoid this error by using the static CacheManager.create()
methods, which always return the named (or default unnamed) CacheManager if it already exists in that JVM. If the named (or default unnamed) CacheManager does not exist, the CacheManager.create()
methods create it.
NOTE: In Ehcache 2.5.0/2.5.1 Cachemanager.create(...)
gets or creates the CacheManager regardless of whether it is a singleton or not. In Ehcache 2.5.2, calling CacheManager.create(...)
returns the existing singleton CacheManager with the configured name (if it exists) or creates the singleton based on the passed-in configuration.
Ehcache 2.5.2 introduced the CacheManager.newInstance(...)
method, which parses the passed-in configuration to either get the existing named CacheManager or create that CacheManager if it doesn’t exist.
With Ehcache 2.5.2 and higher, the behavior of the CacheManager creation methods is as follows:
CacheManager.newInstance(Configuration configuration)
– Create a new CacheManager or return the existing one named in the configuration.CacheManager.create()
– Create a new singleton CacheManager with default configuration, or return the existing singleton. This is the same asCacheManager.getInstance()
.CacheManager.create(Configuration configuration)
– Create a singleton CacheManager with the passed-in configuration, or return the existing singleton.new CacheManager(Configuration configuration)
– Create a new CacheManager, or throw an exception if the CacheManager named in the configuration already exists or if the parameter (configuration) is null.
See the Ehcache API documentation for more information on these methods, including options for passing in configuration. For examples, see Code Samples.
Singleton Mode
Ehcache-1.1 supported only one CacheManager
instance which was a singleton. CacheManager can still be used in this way using the static factory methods.
Instance Mode
From ehcache-1.2, CacheManager has constructors which mirror the various static create methods. This enables multiple CacheManagers to be created and used concurrently. Each CacheManager requires its own configuration.
If the Caches under management use only the MemoryStore, there are no special considerations. If Caches use the DiskStore, the diskStore path specified in each CacheManager configuration should be unique. When a new CacheManager is created, a check is made that there are no other CacheManagers using the same diskStore path. If there are, a CacheException is thrown. If a CacheManager is part of a cluster, there will also be listener ports which must be unique.
Mixed Singleton and Instance Mode
If an application creates instances of CacheManager using a constructor, and also calls a static create method, there will exist a singleton instance of CacheManager which will be returned each time the create method is called together with any other instances created via constructor. The two types will coexist peacefully.
Ehcache
All caches implement the Ehcache
interface. A cache has a name and attributes. Each cache contains Elements.
A Cache in Ehcache is analogous to a cache region in other caching systems.
Cache elements are stored in the MemoryStore
. Optionally they also overflow to a DiskStore
.
Element
An element is an atomic entry in a cache. It has a key, a value and a record of accesses. Elements are put into and removed from caches. They can also expire and be removed by the Cache, depending on the Cache settings.
As of ehcache-1.2 there is an API for Objects in addition to the one for Serializable. Non-serializable Objects can use all parts of Ehcache except for DiskStore and replication. If an attempt is made to persist or replicate them they are discarded without error and with a DEBUG level log message.
The APIs are identical except for the return methods from Element. Two new methods on Element: getObjectValue and getKeyValue are the only API differences between the Serializable and Object APIs. This makes it very easy to start with caching Objects and then change your Objects to Seralizable to participate in the extra features when needed. Also a large number of Java classes are simply not Serializable.


A key part of any CI/CD pipeline is getting your application from the build stage into your staging and production environments. We’re going to explore how to approach this problem using Gitlab-CI, Google Container Registry and Google Kubernetes Engine.
Let’s say you have an application living on Gitlab, and you want to release an image on Google Container Registry, and deploy it to your Kubernetes cluster automagically.
Thankfully, not just anyone can deploy containers on your cluster, so we’ll have to create a Google Cloud Platform service account with the appropriate roles.
$ cat <YOUR_JSON_KEY_FILE> | base64 | xclip -sel clip
The last command will copy your JSON key to the clipboard after encoding it to base64. This is not a substitute for good security practices, and would only foil the casual snoop. Make sure you never expose the key, and treat it as if it were plain text, because it might as well be. Follow this conversation on Gitlab for more info.
Now that we’ve copied our key, we need to store it as a CI/CD variable in Gitlab, and create some additional ones to configure the runner with our project and cluster information. Open up your project’s CI/CD settings and expand the Variables section, and add the followind entries:
GCP_SERVICE_KEY
: paste your base64 encoded key from the previous stepGCP_PROJECT_NAME
: the name of your google cloud projectGCR_REPO
: the full name of your container image (ie. gcr.io/foo/bar)GKE_CLUSTER_ZONE
: the zone where your Kubernetes controller residesGKE_CLUSTER_NAME
: the name of your GKE clusterIf you have a regional cluster, replace GKE_CLUSTER_ZONE
with GKE_CLUSTER_REGION
,
and use your Google Cloud cluster region as the value.
Once you have the variables set up, it’s time to put them to work and write your
.gitlab-ci.yml
file. First we’ll define a container to build our image using
Docker-in-Docker Here’s what that looks like:
build:
stage: build
image: docker:latest
before_script:
- docker login -u _json_key -p "$(echo $GCP_SERVICE_KEY | base64 -d)" https://gcr.io
script:
- docker build --pull -t ${GCR_REPO}:${CI_BUILD_REF} -f Dockerfile .
- docker push ${GCR_REPO}:${CI_BUILD_REF}
services:
- docker:dind
when: manual
Next, we’ll spin up a debian runner to deploy our image to our GKE cluster using the following code:
deploy:
stage: deploy
before_script:
- apt-get update && apt-get install apt-transport-https
- curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg |
apt-key add -
- echo "deb https://packages.cloud.google.com/apt cloud-sdk-stretch main" |
tee -a /etc/apt/sources.list.d/google-cloud-sdk.list
- echo "deb https://apt.kubernetes.io/ kubernetes-stretch main" |
tee -a /etc/apt/sources.list.d/kubernetes.list
- apt-get update && apt-get install kubectl google-cloud-sdk -y
- echo "$(echo $GCP_SERVICE_KEY | base64 -di)" > keyfile
- gcloud --quiet auth activate-service-account --key-file keyfile
- gcloud --quiet config set project ${GCP_PROJECT_NAME}
- gcloud --quiet config set container/cluster ${GKE_CLUSTER_NAME}
- gcloud --quiet config set compute/zone ${GKE_CLUSTER_ZONE}
- gcloud --quiet container clusters get-credentials ${GKE_CLUSTER_NAME}
script:
- kubectl apply -f deployment.yaml
when: manual
If you have a regional cluster, replace:
- gcloud --quiet config set compute/zone ${GKE_CLUSTER_ZONE}
with:
- gcloud --quiet config set compute/region ${GKE_CLUSTER_REGION}
The first half of the before_script installs google-cloud-sdk
and kubectl
,
then decodes the service key into a file and use it to authenticate with Google.
The next part configures your project and cluster parameters, and the last line
generates your .kube/config
.
How you choose to deploy your app is up to you. You can use kubectl apply
,
like the example above, but you’d be better off using Helm. If you want to
install the Helm client, add the following to your before_script:
- wget https://raw.githubusercontent.com/helm/helm/master/scripts/get -O get_helm.sh
- chmod +x get_helm.sh
- ./get_helm.sh
- helm init --client-only
If you want to avoid installing google-cloud-sdk
on your Gitlab runner,
you can instead generate the kubeconfig on your own machine using the same gcloud
commands, save your (encoded) ./kube/config
to a CI/CD variable, and decode it
into the $KUBECONFIG
variable, which Gitlab reserves for your kubernetes
configuration. Or you can forget about the base64 encoding entirely and load it
straight into $KUBECONFIG
.
Hopefully this has saved you some pain, or better yet, given you a useful tool to automate your CI/CD strategy. Come back soon for more!


Basic
Number of visible slides
Margin between slides
Infinite loop
Vertical direction
Adaptive Height
Equal Height
Move by 2
Move over 1s
Easing preset
Custom easing
Wait animation
Move to a slide by clicking
Auto playing
Auto play every 1s
Pause on hovering, not on focusing
Navigation components
Swipe disabled
Swipe threshold
No bouncing effect on edges
Reduced friction on edges
Mouse wheel
Mouse wheel no more than once a second
Scroll not released on edges
No aria attributes
Pixel perfect CSS
Use percentage values in CSS
Responsive
Responsive: desktop first
Sync between instances


Virtualization is the process of creating a software-based, or virtual, representation of something, such as virtual applications, servers, storage and networks.
Much like physical containers, application containers are a form of digital packaging. You can run various applications that use the same OS or cloud.
What do you think is better, virtualization or containerization. Find out what's better by clicking on the button below!
Learn by doing. Click on the button below to create your own webserver using docker on your terminal.
Learn how to use the basic commands of linux. Learn how to create a docker container using linux.
Learn how to dockerize your python application using pycharm and docker by clicking on the button below.


- SENSOR_MAX_VALUE - Static variable in class WaitAnalogSensor
-
Defines the maximum value that an analog sensor can read.
- SENSOR_MIN_VALUE - Static variable in class WaitAnalogSensor
-
Defines the minimum value that an analog sensor can read.
- setBackLightSensor(LightSensor) - Method in class ProportionalLineFollower
-
Set the back light sensor for proportional line follower.
- setBigger(boolean) - Method in class WaitAnalogSensor
-
Set the bigger field.
- setComparisonValue(byte) - Method in class WaitAnalogSensor
-
Set the comparison value, checks that the value is in the range of an
analog sensor.
- setComparisonValue(int) - Method in class WaitMotor
-
Set the comparison value.
- setFollowBlack(boolean) - Method in class ProportionalLineFollower
-
Set the follow of a black line.
- setFrontLightSensor(LightSensor) - Method in class ProportionalLineFollower
-
Set the frontal light sensor for proportional line follower.
- setLightSensor(LightSensor) - Method in class WaitLightSensor
-
Set the light sensor.
- setLineOnLeft(boolean) - Method in class LineFollower
-
Set the the line on the left.
- setPower(byte) - Method in class Navigation
-
Set the power of the navigation.
- setPower(byte) - Method in class SingleMotor
-
Set the power of the motor.
- setSingleMotor(SingleMotor) - Method in class WaitMotor
-
Set the single motor.
- setSoundSensor(SoundSensor) - Method in class WaitSoundSensor
-
Set the sound sensor.
- setTouchSensor(TouchSensor) - Method in class WaitTouchSensor
-
Set the touch sensor.
- setTurning(byte) - Method in class Navigation
-
Set the turning of the navigation.
- setUltrasonicSensor(UltrasonicSensor) - Method in class WaitUltrasonicSensor
-
Set the ultrasonic sensor.
- setWaitAction(byte) - Method in class WaitTouchSensor
-
Set the comparison wait action checking that the wait action is valid.
- setWaitTime(long) - Method in class WaitTime
-
Set the time to wait.
- SingleMotor - Class in <Unnamed>
-
Management of a motor in a NXT brick.
- SingleMotor(char) - Constructor for class SingleMotor
-
Constructor method, creates the single motor with the motor port.
- start() - Method in class LineFollower
-
- start() - Method in class Navigation
-
Start the navigation.
- start() - Method in class ProportionalLineFollower
-
- start() - Method in class SingleMotor
-
Starts the motor.
- stop() - Method in class Navigation
-
Stop the navigation.
- stop() - Method in class SingleMotor
-
Stops the motor.
- WAIT_TIME - Static variable in class WaitAnalogSensor
-
Constant that defines the time to wait (in milliseconds) before making a
new check to finish the wait.
- WAIT_TIME - Static variable in class WaitTouchSensor
-
Constant that defines the time to wait (in milliseconds) before making a
new check to finish the wait.
- WaitAnalogSensor - Class in <Unnamed>
-
WaitAnalogSensor, used to generalize all analog sensor waiting classes.
- WaitAnalogSensor(boolean, byte) - Constructor for class WaitAnalogSensor
-
Constructor method, creates a new wait by setting the comparison value
and if it must be bigger than the value read by the sensor.
- waitLight() - Method in class WaitLightSensor
-
Main method that finishes the wait based on the comparison value.
- WaitLightSensor - Class in <Unnamed>
-
WaitLightSensor, used to wait a value on a light sensor.
- WaitLightSensor(LightSensor, byte, boolean) - Constructor for class WaitLightSensor
-
Constructor method, defines the sensor, the comparison value and if it
must be bigger than the value read by the sensor.
- WaitLightSensor(SensorPort, byte, boolean) - Constructor for class WaitLightSensor
-
Constructor method, defines the sensor port, the comparison value and if
it must be bigger than the value read by the sensor.
- WaitMotor - Class in <Unnamed>
-
WaitMotor, used to wait the rotations of a motor.
- WaitMotor(SingleMotor, int) - Constructor for class WaitMotor
-
Constructor method, creates the wait by setting the motor and the
comparison value.
- waitMotor() - Method in class WaitMotor
-
Wait the motor rotations based on the comparison value.
- WaitNxtButton - Class in <Unnamed>
-
WaitNxtButton, used to wait the pression of a specific button on the NXT.
- WaitNxtButton() - Constructor for class WaitNxtButton
-
- waitSound() - Method in class WaitSoundSensor
-
Main method that finishes the wait based on the comparison value.
- WaitSoundSensor - Class in <Unnamed>
-
WaitAnalogSensor, used to wait a value on a sound sensor (microphone).
- WaitSoundSensor(SoundSensor, byte, boolean) - Constructor for class WaitSoundSensor
-
Constructor method, defines the sensor, the comparison value and if it
must be bigger than the value read by the sensor.
- WaitSoundSensor(SensorPort, byte, boolean) - Constructor for class WaitSoundSensor
-
Constructor method, defines the sensor port, the comparison value and if
it must be bigger than the value read by the sensor.
- WaitTime - Class in <Unnamed>
-
WaitTime, used to wait for time.
- WaitTime(long) - Constructor for class WaitTime
-
Constructor method, defines the time to wait.
- waitTime() - Method in class WaitTime
-
Wait for the specified time.
- waitTouch() - Method in class WaitTouchSensor
-
Main method that finishes the wait based on the wait action.
- WaitTouchSensor - Class in <Unnamed>
-
WaitTouchSensor, used to wait an action on a touch sensor.
- WaitTouchSensor(TouchSensor, byte) - Constructor for class WaitTouchSensor
-
Constructor method, defines the action to wait and the touch sensor.
- WaitTouchSensor(SensorPort, byte) - Constructor for class WaitTouchSensor
-
Constructor method, defines the action to wait and the port where the
touch sensor is connected.
- waitUltrasonic() - Method in class WaitUltrasonicSensor
-
Main method that finishes the wait based on the comparison value.
- WaitUltrasonicSensor - Class in <Unnamed>
-
WaitUltrasonicSensor, used to wait a value on an ultrasonic sensor.
- WaitUltrasonicSensor(UltrasonicSensor, byte, boolean) - Constructor for class WaitUltrasonicSensor
-
Constructor method, defines the sensor, the comparison value and if it
must be bigger than the value read by the sensor.
- WaitUltrasonicSensor(SensorPort, byte, boolean) - Constructor for class WaitUltrasonicSensor
-
Constructor method, defines the sensor port, the comparison value and if
it must be bigger than the value read by the sensor.


Welcome to vToons
I hope you will enjoy our fantastic selection of music
Please choose from our wonderful selection of songs:
| Genre | Artist | Album | Price | |
|---|---|---|---|---|
| Add to Cart |
| Genre | Artist | Album | Price | Quantity | |
|---|---|---|---|---|---|
| Remove |
I hope you will enjoy our fantastic selection of music
| Genre | Artist | Album | Price | |
|---|---|---|---|---|
| Add to Cart |
| Genre | Artist | Album | Price | Quantity | |
|---|---|---|---|---|---|
| Remove |


py-spy top --pid pid- Start a program and show a live view of the functions that take the most execution time:
py-spy top -- python path/to/file.py- Produce an SVG flame graph of the function call execution time:
py-spy record -o path/to/profile.svg --pid pid- Dump the call stack of a running process:
py-spy dump --pid pid


ROSEWOOD A film review by Scott Renshaw Copyright 1997 Scott Renshaw
(Warner Bros.) Starring: Jon Voight, Ving Rhames, Don Cheadle, Bruce McGill, Esther Rolle, Loren Dean, Elise Neal, Michael Rooker, Cahterine Kellner. Screenplay: Gregory Poirier. Producer: Jon Peters. Director: John Singleton.  Reviewed by Scott Renshaw.
In October 1994, a South Carolina woman named Susan Smith claimed that she was assaulted by a black man who then stole her car with her two young sons inside. Eventually, Smith herself confessed to, and was found guilty of, murdering her own children, but for a while people were on the lookout for a non-existent black assailant. This not-so-anecdotal aside is offered for anyone who might think of ROSEWOOD simply as a sad footnote in American history. Even if that were the case, John Singleton's ROSEWOOD would still be a powerful drama, but it is something more. It is a chilling study of the culture of racism which challenges us to consider whether we still live in a country where, as one character in ROSEWOOD describes it, "nigger is just another word for guilty."
ROSEWOOD begins on December 31, 1922 in a rural Florida county, focusing on two neighboring communities: the all-white town of Sumner, and the nearly all-black town of Rosewood. As the year prepares to turn, unusual events occur in both towns. In Rosewood, a stranger named Mann (Ving Rhames) rides into town and considers settling down there; in Sumner, a white woman named Fannie Taylor (Catherine Kellner) is beaten by her white lover, but accuses an unknown black man of the crime. Though the sheriff of Sumner (Michael Rooker) urges restraint, it doesn't take long for the citizens to band together in a lynch mob to search for an escaped convict rumored to be in the area. Soon ROSEWOOD erupts in flames and chaos, with every inhabitant a suspected collaborator and every home a suspected hiding place. Only two people have a chance to lead some of the residents of Rosewood to safety: Mann, and white shopkeeper John Wright (Jon Voight).
After two films in which John Singleton let his urge to lecture interfere in the storytelling (POETIC JUSTICE and HIGHER LEARNING), he has returned to the masterful composition and dramatic power of BOYZ N THE HOOD. In ROSEWOOD, we have the opportunity to get to know the inhabitants of both Sumner and Rosewood as individuals, compounding the tragedy even as it makes the triumphs more affecting. Even the towns themselves develop distinct personalities: while Rosewood is a thriving town where the residents take pride in the fact that they own almost all the land, Sumner is a town of less picturesque wooden homes where the white residents actually envy their black counterparts in Rosewood. The situation recalls similar reactions against successful minorities in more contemporary times, and focuses the double-edged "logic" of racism: an unsuccessful minority is shiftless, while a successful minority is uppity, or taking what "rightfully" belongs to whites.
The great success of ROSEWOOD is that it turns its story into broader commentary on how racism functions without sacrificing that story. Many of the individual images in ROSEWOOD are riveting, portraying unromanticized violence and pastoral beauty with equal effectiveness thanks to the impressive cinematography of Johnny E. Jensen. The performances are also uniformly strong, led by Don Cheadle as strong, defiant Sylvester Carrier and Jon Voight (in his best role in a decade) as the reluctant hero Wright. Then, beyond the events of the principal narrative, you begin to notice that ROSEWOOD is presenting one of the most complex examinations of racism ever committed to film. Characters are not presented in black-and-white in their views of black and white. There is a continuum of culpability, from Wright's opportunistic treatment of his black neighbors to the sheriff's crimes of omission to the matter-of-fact brutality of Duke (Bruce McGill), a Sumner resident determined to teach his son "how the world is." It is one of the film's most chilling moments when the mob acknowledges with a chuckle that no one really believes a black man assaulted the notably promiscuous Fannie. For them, a lynch mob isn't even about some perverted notion of justice. It's just how the world is.
The only stumbles in ROSEWOOD occur when screenwriter Gregory Poirier bows to convention. A romance between Mann and a young schoolteacher (Elise Neal) adds little to the story but a reason for a climactic embrace; a few scenes near the end, including a big resolution within Wright's family, seem designed simply to garner audience applause. A two hours and twenty minutes, ROSEWOOD does start to drag once the lengthy pursuit of the survivors through the swamps begins, but you continue to care because Singleton has taken the time to make those lives matter. It's worth sticking through to the ending because in ROSEWOOD, the ending is actually a sort of beginning. Though we only need to look at headlines to understand that ROSEWOOD sometimes is about the way the world still is, it is also about the way the world could be.
On the Renshaw scale of 0 to 10 riot boyz: 8.
Visit Scott Renshaw's MoviePage http://www-leland.stanford.edu/~srenshaw Subscribe to receive reviews directly via email See details on the MoviePage
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


{layout name="common/wap_layout" /}
To view this video please enable JavaScript, and consider upgrading to a web browser that supports HTML5 video


BOTs Library
Total Number of BOTs
{{botSummary.totalNoOfBots}}
Number of BOTs running
{{botSummary.totalNoOfRunningBots}}
Total Time saved
{{totalSavedTimeForBots}} mins
Number of failed runs
{{botSummary.totalNoOfFailedBots}}
No data Available


The Globetrotter
Time for Safari?
The Old Continent
Mysterious Orient
Land of Opportunities
Latin New World
The Antipodes
La Ville Lumiere
City in the shadow of Table Mountain
Really a forbidden city?
The capital of global financal market
The heart of northern Italy
Big Apple
The miracle of the Adriatic Sea
City of midnigt sun
Probably the most populous city on Earth


Aviation Gifts
-
New York Times History of Aviation
$69.95 -
47" Replica Sopwith Propeller
Regular Price: $179.00
Special Price $149.99
-
73" Replica World War I Propeller
Regular Price: $229.00
Special Price $194.99
-
Amelia Earhart, Queen of the Air - 1936
$169.00 -
The Hindenburg Disaster - New York Times Front Page Reprint
$59.95 -
Charles Lindbergh's Flight - New York Times Front Page Reprint
$59.95 -
Blue Mimmo Aeroplane
Regular Price: $64.00
Special Price $59.99
-
Zeppelin Over Manhattan - 1924
$169.00 -
Authentic World War II Airplane Bomber Gauges
Regular Price: $425.00
Special Price $359.99
-
Flying Low, Signed by Damon Winter - 2012
$399.00 -
B-17 Flying Fortress Bomber Blueprint Diagram
$99.00 -
World War II Remembered Framed Keepsake, Signed by Tuskegee Airman
Regular Price: $125.00
Special Price $99.99
-
30" French Spad VII Model Airplane
Regular Price: $425.00
Special Price $319.99
-
You Give Him Wings - Circa 1943
$24.95 -
Orville Wright, Testing a Glider - Circa 1903
$169.00 -
Air Force Bomber Korean War - 1953
$169.00 -
40" Trimotor Model Airplane
Regular Price: $775.00
Special Price $619.99
-
Test Flight, Signed by Chang W. Lee - 2007
$399.00 -
Authentic World War II Airplane Fighter Gauges
Regular Price: $425.00
Special Price $359.99
-
19" Spirit of St. Louis Model Airplane
Regular Price: $215.00
Special Price $149.99
-
To Victory - Circa 1943
$24.95 -
Watching for Daredevils - 1929
$169.00 -
15" Sopwith Camel Model Airplane
Regular Price: $175.00
Special Price $144.99
-
Early Firebird Model Airplane Blueprint Diagram
$99.00 -
B-24 Liberator Bomber Blueprint Diagram
$99.00 -
Authentic World War II Bomber Pilot Course Indicator Gauge
Regular Price: $425.00
Special Price $359.99
-
Airship Construction - 1955
$169.00 -
31" Flying Circus Jenny Model Airplane
Regular Price: $230.00
Special Price $174.99
-
Flying Daredevil - 1930
$169.00 -
Stitching Zeppelins - 1931
$169.00 -
Ready for Liftoff - 1919
$169.00 -
Crosscheck - 1933
$169.00 -
Russian Flier - 1921
$169.00 -
Whales of the Air - 1955
$169.00 -
Girl Hawk - 1909
$169.00 -
Flying Schoolgirl - 1917
$169.00 -
Prepping the Plane - 1920
$169.00 -
Army Airship at Washington Monument - 1932
$169.00 -
Arrival of Charles and Anne Lindbergh
$169.00 -
Amelia Earhart - 1932
$169.00 -
Orville Wright at the Controls of a Glider - 1911
$169.00 -
Hindenburg Explodes In Lakehurst, NJ - May 6, 1937
$169.00 -
Propeller Inspection, Kansas City - 1938
$169.00 -
Lady Lindy - 1927
$169.00 -
You Give Us the Fire, We'll Give 'em Hell - Circa 1943
$24.95 -
Flying Over Flushing, Signed by Damon Winter - 2008
$399.00 -
Parade for Charles A. Lindbergh - 1927
$169.00 -
The Hindenburg - 1936
$169.00


View Projects
View Teams
Generate Template
Load Data
Validate Data
Upload Photos
Fastq SRA Upload
Plate Viewer
Team Overview
Project Overview
My Expeditions
Project Settings
{{ $ctrl.currentProject.projectConfiguration.networkApproved ? 'Master' : 'Project' }} Configuration
My Profile


Hello-Books
About
Contact Admin
Sign up
Username:
Email:
Password:
Confirm Password:
Sign up
Have an account?
Sign in


Mohankumar Swaminathan
experimenting life
A self learned web developer during the colleges days, I and my college friends Arun David and Ashok Raj built a student social networking engine that was sold to a Norway company
I'm now full-time on building the start-up DoPartTime.com - "India’s first exclusive marketplace for part time jobs.
More info »
About
CEO & Co-Founder, Tinywall · First generation entrepreneur
Mohan is driven by entrepreneurial spirit and passion towards work. He believes in smart work and and loves to handle challenging tasks. He holds a degree in Bachelor of Computer science engineering from Karunya University. Mohan is a enthusiastic, self-driven, techno-functional professional with over three years of diverse experience in IT / ITES / Public sector / Transport industry. He has around three years of engineering leadership experience in various roles ranging from software developer, team lead, project lead, project and team associate manager, pre-sales and consulting.


{% extends "layout.html" %} {% block pageTitle %} GOV.UK prototyping kit {% endblock %} {% block content %} {% import "release2-2/elements.html" as elements %} {% for page in data %} {% for question in page.healthcareprofessional %} {{ elements.backButton(page,question) }} Continue your application You have until (date specific to customer) to complete your application. Continue your application from: where you left it the start {{ elements.helpline(page) }} {{ elements.validation(page,question) }} {% endfor %} {% endfor %} {% endblock %}
You have until (date specific to customer) to complete your application.


modle left up far right down near
view left up far right down near
Yaw Increase Yaw Decrease
Pitch Increase Pitch Decrease
Roll Increase Roll Decrease


Pepe's Pizzeria!
The best pizzas in pdx!!!
Choose your size.
*Base prices are for Pepe's signature four-cheese pizza!
Small $8
Medium $12
Large $14
Choose additional toppings. Only $1 each!
Add toppings!
How many pizzas?

Finish order
Pizza Total
$


IN THE HIGH COURT OF JUDICATURE AT PATNA Civil Writ Jurisdiction Case No.13787 of 2016 ======================================================
Nawal Sao S/o Late Bansi Sao resident of R. Lal College Road, Infront of House of Ghamandi Mistri, Ward No.- 24 Naya Bazar, Dalpatti, Police Station and District- Lakhisarai ... ... Petitioner/s Versus
1. The State Of Bihar through the Director, Environment and Pollution Control, Board, Shastri Nagar, Patna
2. The State of Bihar through Principal Secretary, Forest and Environment, Department, Patna, Bihar
3. The District Magistrate, Lakhisarai, Bihar
4. THe Sub- Divisional Officer, Sadar, Lakhisarai
5. The Circle Officer, Sadar, Lakhisarai
6. Jai Prakash Sao S/o Late Ram Das Sao resident of R. Lal Colleage, Road, infront of House of Ghamandi Mistri, Ward No. 24, Naya Bazar, Dalpatti, P.S. and District- Lakhisarai ... ... Respondent/s ====================================================== Appearance :
For the Petitioner/s : Mr. Shivendra Kishore, Sr. Ad. For the Respondent/s : Ms. Shalini Raut, AC to SC-17 ====================================================== CORAM: HONOURABLE MR. JUSTICE SANJAY PRIYA ORAL JUDGMENT Date : 02-05-2019 None has appeared on behalf of petitioner. Learned counsel for Pollution Control Board is present.
The instant writ petition has been filed for direction to the respondents to stop the operation of the rice mill of Respondent No. 6 immediately and direction for shifting of the rice mill from the residential area to the industrial area of the district or any other place outside the town as well as direction to Patna High Court CWJC No.13787 of 2016 dt.02-05-2019 2/5 enquire about the violation of pollution norms and damages caused due to rice mill running in the residential area.
Learned counsel for the Pollution Control Board has submitted that rice mill of respondent no. 6 has already been closed vide Memo No. T-8156 dated 26.10.2016 (Annexure-R-1/C to the counter affidavit).
Counter Affidavit has been filed on behalf of Pollution Control Board, wherein it is mentioned that in compliance of implementation of the provisions under Sections 17 and 25/26 of the Water Act, 1974 and Section 17 and 21 of Air Act, 1981, a guideline for rice mill was framed and notified by Board's notification no. 26 dated 08.11.2003 which was subsequently amended vide notification no. 07 Memo No. 611 dated 27.06.2011. As per amended provision battery limit of the rice/pulse mill, less than 5 ton per day, if confirming to the standard of noise under the Air Act, is exempted from habitation, river/wetland and railway line, national or State Highway. Rice/pulse mills having aforesaid production capacity per day of parboiled rice are required to maintain a distance of 200 meters from the habitation, river/wetland respectively. It should be at a distance of 50 meters from railway line, national/State highway. Similarly, rice/pulse mill having production capacity of pre-boiled rice of 5 tons per Patna High Court CWJC No.13787 of 2016 dt.02-05-2019 3/5 day and above, without gasifier are required to maintain battery limit of 100 meters from the habitation, 50 meters from river/wetland and 50 meters from railway line, national/State highway. The said notification has further clarified that the habitation for the purpose shall mean residential areas with 200 permanent dwellers or more. Copy of aforesaid notification dated 27.06.2011 is annexed as Annexure-R-1/A.
It is mentioned in the Counter Affidavit that respondent No. 6 without obtaining consent to establish and consent to operate from the State Pollution Board established and operated the rice mill in the name and style of M/s Raja Mini Rice Mill, Jainagar, R.Lal College Road, Ward No. 24, Lakhisarai within densely populated habitation/residential area having production capacity of 5 tons pre-boiled rice per day.
Respondent no. 6 submitted online application on 26.04.2016 seeking consent to establish rice mill.
It is further mentioned in the Counter Affidavit that unit of Respondent No. 6 was inspected by the Junior Environmental Engineer, who found the rice mill established and under operation, which produces approximately 6 m.t. pre-boiled rice per day. The Junior Engineer vide his checklist dated 02.09.2016 recommended for rejection of application of respondent no. 6 seeking NOC. Patna High Court CWJC No.13787 of 2016 dt.02-05-2019 4/5 The Regional Officer, Barauni endorsed the recommendation of JEE on the check-list and remarked that the unit is already situated adjacent to habitation. As recommended CTE application may be rejected. Thereafter the AEE also recommended for rejection of CTE application of respondent no.
6. On 06.10.2016 the Member Secretary of the State Board taking into consideration the inspection report submitted by the Regional Officer to the extent that the site does not confirm the sitting criteria, recommended that the CTE application of respondent no. 6 may be rejected. Thereafter the Chairman of the State Board rejected the CTE application of respondent no. 6 on 07.10.2016.
The Member Secretary of the State Board vide letter bearing Memo No. T-8156 dated 26.10.2016 informed respondent no. 6 that his CTE application dated 26.04.2016 has been rejected since on the date of inspection the rice mill was found established and under operation without obtaining CTE and CTO from the State Board. The Unit is situated within the habitation/residential area whereas the minimum distance should be 100 meters. The complaint against the rice mill has also been received causing air pollution.  Copy of aforesaid Patna High Court CWJC No.13787 of 2016 dt.02-05-2019 5/5 letter bearing Memo No. T-8156 dated 26.10.2016 is annexed as Annexure-R-1/C to the Counter Affidavit.
In this manner, from perusal of Annexure-R-1/C to the Counter Affidavit it appears that CTE application of respondent no. 6 has been rejected since the rice mill was found established and under operation within the habitation/residential area whereas its minimum distance should be 100 meters.
In such circumstances, this Court finds that grievance of the petitioner has already been redressed.
Therefore, this Court is not inclined to pass any further order in this writ petition.
The instant writ petition is accordingly disposed off.
(Sanjay Priya, J) rakhi/-
AFR/NAFR CAV DATE N.A. Uploading Date 07.05.2019 Transmission Date


CHAPTER 610
RETIREMENT AND REMOVAL OF JUSTICES AND JUDGES
REPEALED. L 1980, c 263, §1.
Cross References
Constitutional provisions on retirement, removal, and discipline, see Const. art. VI, §5.


--- layout: post title: Launching chromium from xmonad prompt shortcuts date: '2011-08-16T21:50:00-04:00' tags: - JustMigrated - chromium - xmonad tumblr_url: http://sortedaffairs.tumblr.com/post/49113595673/launching-chromium-with-urls-from-xmonad-shor ---
For some unknown reason chromium seems only to accept UTF-8 encoded urls for its cli arguments. This conflicts with xmonad which pipes ISO-8859 text when it spawns processes via shortcuts (e.g. the XMonad.Actions.Search
module). To get around this you can point the default browser (xmonad uses the $BROWSER
env variable in bash) to a script which uses the unix iconv
program to sanitize xmonad’s text for chromium input and then launches chromium with the purified url. It also logs all the xmonad-spawned searches to a file for my future amusement.
In .bashrc:
export BROWSER="${HOME}/.chromium_opener.sh"
And .chromium_opener.sh…
Voila!


The aim of this GSoC project is to provide a convenient way to access documentation in the Juno IDE. Any work on this has to be on the Julia side (for getting the necessary information by introspection) and on the Atom side (for presenting said information).
Most of the work on the Julia side went into a new package, DocSeeker.jl, which implements all of the introspection necessary to get docstrings from installed packages; a small shim in Atom.jl (Atom.jl#99) then delegates any front end requests to that package.
The front end work is directly included in the Juno stack (atom-julia-client#377 and atom-ink#148, to be precise), since it's pretty fundamental IDE functionality.
alldocs()
, which will return information about all symbols available in the current Julia session. Those symbols are easily found by recursing through all currently loaded Module
s and calling Base.names()
on them. Additionally, Julia's docsystem collects all symbols with attached docstrings, which can be easily retrieved.
All of that is pretty slow – it takes on the order of half a second on my machine with a couple of loaded packages (and returns information about ~13,000 symbols). At the same time the available symbols don't change too often, so caching is a viable solution.
alldocs
, but I've decided on a few that turned out to be most important while testing:
Exported: Julia doesn't (yet) have a way to make certain symbols part of a module's public API, so I'm using the set of exported symbols instead.
Module: It's possible to search in a specified module, in all loaded modules or in all installed modules.
Search: Either in names only, or in names and docstrings.
That last point warrants some more information, because it's not as trivial as the other two to get at least somewhat right. The basic problem here is a (fuzzy) full text search, which is what each search engine out there in the depth of the internet tries to do. Naturally there are quite a few (open source) implementations out there already: solr, lunr (which is used by docs.julialang.org), but also e.g. the FTS extension for SQL and many more.
In the early days of the summer I was trying a couple of things to get this to work properly, but shelling out to Java or JavaScript seemed like overkill for the problem at hand, while SQL.jl was giving me quite a hard time and doesn't ship the FTS extension by default.
A custom implementation did not seem too hard at first, but requires a good scoring function that, given a search query needle
, maps a docstring to a number between 0 and 1:
At first I tried rolling my own string comparison function (with mixed success), but then I stumbled upon the excellent StringDistances.jl which does pretty much all I needed.
The scoring function is applied to all relevant symbols in a threaded loop (which gives a free 1.5x speedup on my machine); afterwards all applicable filters are applied and the top 20 results are returned.
Filtering and searching takes about 0.1s on my machine, which means that it's almost negligible compared to the time necessary for retrieving the docstrings.
If you've used Juno before you may notice the much improved markdown rendering (which is of course available all throughout Juno): There's syntax highlighting, LaTeX rendering and lots of general improvements.
Apart from that the docpane UI shows most relevant information (type of the binding, defining module, whether the binding is exported etc.); a click on the binding will take you to the defining location and a click on the module will give some information on that. Links also generally work fine (external ones will open in your default browser, while those defined with Documenter.jl's [link](@ref)
syntax will start a new search).


{% if message.was_sent %}
Sent at
{% else %}
Queued for
{% endif %}
{{ message.send_at|date }}
{{ message.send_at|time:"f A" }}
From
{{ message.from_name }} <{{ message.from_email }}>
To
{{ message.to }}
{% with attachments=message.attachment_set.all %}
{% if attachments|length != 0 %}
{% endif %}
{% endwith %}
Delete Message
Are you sure you want to delete this message?
{% if not message.was_sent %}
This message will not no longer be sent once deleted.
{% endif %}
This action is irreversible!