- Main Page
- Namespaces
- Classes
- Files

- File List
- File Members

# C:/AngioLocalizeNoAuto/MevisLabNoAutoReg/STUMevisApp/General/Sources/Shared/STURTStructure/mlRTStructure.cpp

Go to the documentation of this file.

    00001 /*
    00002 * Copyright (c) 2009 Stanford University, School of Medicine All rights reserved.
    00003 *
    00004 * STANFORD ACADEMIC SOFTWARE LICENSE AGREEMENT
    00005 * FOR AngioLocalize SOURCE CODE:
    00006 *
    00007 * 1.  This is a legal agreement between you, RECIPIENT, and STANFORD UNIVERSITY.
    00008 *       By accepting, receiving, and using AngioLocalize.including any accompanying information, materials or
    00009 *       manuals (Program), you are agreeing to be bound by the terms of this Agreement.
    00010 *       If you do not agree to the terms of this Agreement, promptly return the Program to the STANFORD.
    00011
    00012 * 2.  STANFORD grants to RECIPIENT a royalty-free, nonexclusive, and nontransferable license to use the Program
    00013 *       and accompanying source code furnished hereunder, upon the terms and conditions set out below.
    00014 *       documentation and/or other materials provided with the distribution.
    00015 * 3.  RECIPIENT acknowledges that the Program is a research tool still in the development stage and that
    00016 *       it is being supplied as is, without any accompanying services, support or improvements from STANFORD.
    00017 * 4.  RECIPIENT agrees to use the Program solely for internal non-commercial purposes.
    00018 * 5.  RECIPIENT may create derivatives and further transfer the Program under the following terms and conditions:
    00019 *        A) Recipient agrees to not commercially exploit the Program and agrees all uses will be for non-commercial purposes; and,
    00020 *        B) Recipient may not mark any derivatives with the title of Program and may not to use iPad mark for any derivatives; and,
    00021 *        C) Recipient agrees to mark and acknowledge all derivatives as follows: "This is a derivative work based on AngioLocalize:
    00022 *           Frameless AVM localization with 2D Digital Subtraction Angiography (DSA) and 3D Rotational Angiography (DRA) Images developed
    00023 *           by Dimitre Hristov, Lina Liu.
    00024 *        D) Recipient agrees to make all improvements, enhancements and derivatives available under
    00025 *           similar terms and conditions to the research community.
    00026 * 6.   RECIPIENT warrants that RECIPIENT will not remove or export any part of the software or Program from the United
    00027 *       States except in full compliance with all United States and other applicable laws and regulations.
    00028 * 7.  RECIPIENT will use the Program in compliance with all applicable laws, policies and regulations including, but not
    00029 *       limited to, any approvals, informed consent and patient confidentiality principles.
    00030 * 8.   RECIPIENT will indemnify, hold harmless, and defend Stanford against any claim of any kind arising out of or
    00031 *       related to the exercise of any rights granted under this Agreement or the breach of this Agreement by RECIPIENT.
    00032 * 9.  Title and copyright to the Program and any associated documentation shall at all times remain with STANFORD,
    00033 *       and RECIPIENT agrees to preserve same.
    00034 */
    00035 //----------------------------------------------------------------------------------
    00037
    00044 //----------------------------------------------------------------------------------
    00045
    00046 // Local includes
    00047 #include "mlRTStructure.h"
    00048
    00049 ML_START_NAMESPACE
    00050
    00051
    00053 ML_CLASS_SOURCE(RTStructure, Base);
    00054
    00055 //----------------------------------------------------------------------------------
    00057 //----------------------------------------------------------------------------------
    00058 /*RTStructure::RTStructure ()
    00059   : BaseOp(0, 0)
    00060 {
    00061   ML_TRACE_IN("RTStructure::RTStructure ()");
    00062
    00063   // Suppress calls of handleNotification on field changes to
    00064   // avoid side effects during initialization phase.
    00065   handleNotificationOff();
    00066
    00067   // Connect input field(s) with output field(s) to notify
    00068   // connected modules if input image(s) change.
    00069   for (int inIdx=0; inIdx < 0; ++inIdx){
    00070     for (int outIdx=0; outIdx < 0; ++outIdx){
    00071       getInField(inIdx)->attachField(getOutField(outIdx));
    00072     }
    00073   }
    00074
    00075   // Reactivate calls of handleNotification on field changes.
    00076   handleNotificationOn();
    00077
    00078   // Activate inplace data buffers for output outIndex and input inIndex.
    00079   // setOutImgInplace(outIndex, inIndex);
    00080
    00081   // Activate page data bypass from input inIdx to output outIdx.
    00082   // Note that the module must still be able to calculate the output image.
    00083   // setBypass(outIndex, inIndex);
    00084
    00085   // Activate parallel execution of calcOutSubImage.
    00086   // setThreadSupport(supportMode);
    00087   // with supportMode =
    00088   //   NO_THREAD_SUPPORT                 //! The module is not thread safe at all.
    00089   //   CALC_OUTSUBIMAGE_ON_STD_TYPES     //! calcOutSubImage can be called in parallel for scalar voxel types.
    00090   //   CALC_OUTSUBIMAGE_ON_CARRIER_TYPES //! calcOutSubImage can be called in parallel for carrier voxel types.
    00091   //   CALC_OUTSUBIMAGE_ON_ALL_TYPES     //! calcOutSubImage can be called in parallel for all voxel types.
    00092   // Warning: You should be familiar with multithreading before activating this feature.
    00093
    00094   // Specify whether the module can only process standard scalar voxel types or
    00095   // also registered voxel types (vec2, mat2, complexf, Vector, etc.)
    00096   // setVoxelDataTypeSupport(permittedTypes);
    00097   // with permittedTypes =
    00098   //   ONLY_STANDARD_TYPES               //! Only standard scalar voxels are supported.
    00099   //   FULLY_OPERATIONAL                 //! Scalar and registered voxels types are supported.
    00100   //   MINIMUM_OPERATIONAL               //! Scalar and registered voxel types are supported.
    00101   //                                     //! Voxel operators are not used by algorithm.
    00102   //
    00103   // See ML Programming Guide, "Configuring Image Processing Behaviour of the BaseOp"
    00104   // for further details.
    00105 }
    00106
    00107 //----------------------------------------------------------------------------------
    00109 //----------------------------------------------------------------------------------
    00110 void RTStructure::handleNotification (Field *field)
    00111 {
    00112   ML_TRACE_IN("RTStructure::handleNotification ()");
    00113
    00114   // Handle changes of module parameters and connectors here.
    00115 }*/
    00116
    00117 ML_END_NAMESPACE
    00118

All Classes Namespaces Files Functions Variables Enumerator Friends