Code Search for Developers
 
 
  

DataBlockType.h from Oscill8 at Krugle


Show DataBlockType.h syntax highlighted

/**
 * @file DataBlockType.h
 * @brief  enumeration of types for C
 * @author SBW Development Group <sysbio-team@caltech.edu>
 *
 * Organization: Caltech ERATO Kitano Systems Biology Project
 *
 * Created: @date 18th June 2001
 * $Id: DataBlockType.h,v 1.2 2004/11/11 00:15:28 fbergmann Exp $
 * $Source: /cvsroot/jdesigner/C++Broker/include/SBW/DataBlockType.h,v $
 */

/*
** Copyright 2001 California Institute of Technology and
** Japan Science and Technology Corporation.
** 
** This library is free software; you can redistribute it and/or modify it
** under the terms of the GNU Lesser General Public License as published
** by the Free Software Foundation; either version 2.1 of the License, or
** any later version.
** 
** This library is distributed in the hope that it will be useful, but
** WITHOUT ANY WARRANTY, WITHOUT EVEN THE IMPLIED WARRANTY OF
** MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.  The software and
** documentation provided hereunder is on an "as is" basis, and the
** California Institute of Technology and Japan Science and Technology
** Corporation have no obligations to provide maintenance, support,
** updates, enhancements or modifications.  In no event shall the
** California Institute of Technology or the Japan Science and Technology
** Corporation be liable to any party for direct, indirect, special,
** incidental or consequential damages, including lost profits, arising
** out of the use of this software and its documentation, even if the
** California Institute of Technology and/or Japan Science and Technology
** Corporation have been advised of the possibility of such damage.  See
** the GNU Lesser General Public License for more details.
** 
** You should have received a copy of the GNU Lesser General Public License
** along with this library; if not, write to the Free Software Foundation,
** Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
**
** The original code contained here was initially developed by:
**
**     Andrew Finney, Herbert Sauro, Michael Hucka, Hamid Bolouri
**     The Systems Biology Workbench Development Group
**     ERATO Kitano Systems Biology Project
**     Control and Dynamical Systems, MC 107-81
**     California Institute of Technology
**     Pasadena, CA, 91125, USA
**
**     http://www.cds.caltech.edu/erato
**     mailto:sysbio-team@caltech.edu
**
** Contributor(s):
**
*/

/// include loop block
#ifndef DATABLOCKTYPE
#define DATABLOCKTYPE

/**
 * Exception types used in C API.
 * uses standard encoding of exceptions used in both in the API and in exception messages.
 */
typedef enum sbwExceptionCode
{
	SBWApplicationExceptionCode = 0, /**< generated by a module ie not raised by the SBW infastructure */
    SBWRawExceptionCode = 1, /**< generated by a OS or unhandled exception */
    SBWCommunicationExceptionCode = 2, /**< communication between modules has been disrupted */
    SBWModuleStartExceptionCode = 3, /**< unable to start module when a new module instance was required */
    SBWTypeMismatchExceptionCode = 4, /**< the data contained in a datablock doesn't correspond to the requested type */
    SBWIncomptatibleMethodSignatureExceptionCode = 5, /**< two method signatures do not match */
    SBWModuleIdSyntaxExceptionCode = 6, /**< the syntax of a module instance identifier string is incorrect */
    SBWIncorrectCategorySyntaxExceptionCode = 7, /**< the syntax of a service category string is incorrect */
    SBWServiceNotFoundExceptionCode = 9, /**< the requested service doesn't exist */ 
    SBWMethodTypeNotBlockTypeExceptionCode = 10, /**< thrown during communications if a supplied class uses types which are not data block types (not raised in C++ library) */
    SBWMethodAmbiguousExceptionCode = 11, /**< the given signature matches more than one method on a service */
    SBWUnsupportedObjectTypeExceptionCode = 12, /**< the given valid type is not supported by a client library */
    SBWMethodNotFoundExceptionCode = 13, /**< the given signature or name doesn't match any method on a service */
	SBWSignatureSyntaxExceptionCode = 14, /**< the syntax of the given signature is incorrect */
	SBWModuleDefinitionExceptionCode = 15, /**< exception thrown when an attempt to define a new module fails */
	SBWModuleNotFoundExceptionCode = 16, /**< the requested module doesn't exist */
	SBWBrokerStartExceptionCode = 17, /**< the requested module doesn't exist */
} SBWExceptionType ;

/**
 * Datatypes used in C API.
 * uses standard encoding of datatypes used in both the API and in datablocks.
 */
typedef enum sbwdataBlockType
{
	SBWByteType = 0 , /**< C API type - unsigned char */
	SBWIntegerType = 1, /**< C API type - SBWInteger */ 
	SBWDoubleType = 2, /**< C API type - SBWDouble */
	SBWBooleanType = 3, /**< C API type - SBWBoolean */
	SBWStringType = 4, /**< C API type - char * */
	SBWArrayType = 5, /**< C API type - <T>* or <T>** */
	SBWListType = 6, /**< C API type - SBWDataBlockReader * or SBWDataBlockWriter * */
	SBWVoidType = 7, /**< placeholder when no value is returned from a method */
	SBWComplexType = 8, /**< C API type - SBWComplex */ 
	SBWTerminateType = -1, /**< value of last byte in a datablock or message */
	SBWErrorType = -2 /**< placeholder when error has occured in an API function */
} SBWDataBlockType;

/**
 * The modes in which a given module/application can operate with respect to SBW
 */
typedef enum sbwmoduleMode
{
	SBWNormalMode = 0, /**< either not connected or only consuming services */
	SBWModuleMode = 1, /**< providing services */
	SBWRegisterMode = 2 /**< registering services */
} SBWModuleModeType;

/**
 * The ways in which a given module can be managed by the broker.
 * Uses standard encoding used by both by the API and the broker interface.
 */
typedef enum sbwmoduleManagementType
{
	SBW_UniqueModule = 0, /**< broker only creates one instance of the module and refers all requests to that instance.*/
	SBW_SelfManagedModule = 1 /**< broker creates a new instance for each module instance request */
	//SBW_SBWManagedModule = 2 /**< not currently used - as for self managed but will shutdown module if other module instances no longer reference the module instance. */
} SBWModuleManagementType;

#endif // DATABLOCKTYPE




See more files for this project here

Oscill8

Oscill8 is a suite of tools for analyzing dynamical systems which concentrates on understanding how the dynamical behavior depends on the parameters using bifurcation theory and reaction network theory.

Project homepage: http://sourceforge.net/projects/oscill8
Programming language(s): C,C#,C++
License: other

  .sconsign
  DataBlockReader.h
  DataBlockReaderClass.h
  DataBlockType.h
  DataBlockWriter.h
  DataBlockWriterClass.h
  DoNothingReceiver.h
  Handler.h
  HandlerForC.h
  ImplDataBlockReader.h
  ImplDataBlockReaderClass.h
  ImplDataBlockWriter.h
  ImplDataBlockWriterClass.h
  ImplModuleDescriptor.h
  Method.h
  MethodImpl.h
  MethodInline.h
  MethodTable.h
  Module.h
  ModuleDescriptor.h
  ModuleImpl.h
  ModuleInline.h
  RPCInCall.h
  RPCOutCall.h
  Receiver.h
  RuntimeProperties.h
  SBW.h
  SBWApplicationException.h
  SBWBrokerStartException.h
  SBWC.h
  SBWCommunicationException.h
  SBWConfig.h
  SBWException.h
  SBWHandle.h
  SBWHighLevel.h
  SBWIncompatibleMethodSignatureException.h
  SBWIncorrectCategorySyntaxException.h
  SBWListener.h
  SBWListenerConsolidator.h
  SBWListenerForC.h
  SBWLowLevel.h
  SBWMethodAmbiguousException.h
  SBWMethodNotFoundException.h
  SBWMethodTypeNotBlockTypeException.h
  SBWModuleDefinitionException.h
  SBWModuleIdSyntaxException.h
  SBWModuleNotFoundException.h
  SBWModuleRPC.h
  SBWModuleStartException.h
  SBWOSSocket.h
  SBWObject.h
  SBWRPC.h
  SBWRPCListener.h
  SBWRawException.h
  SBWServiceNotFoundException.h
  SBWSignatureSyntaxException.h
  SBWTypeMismatchException.h
  SBWUnsupportedObjectTypeException.h
  Service.h
  ServiceDescriptor.h
  ServiceImpl.h
  ServiceInline.h
  SessionKey.h
  Signature.h
  SignatureArray.h
  SignatureBoolean.h
  SignatureElement.h
  SignatureList.h
  SignatureListContents.h
  SignatureScalar.h
  SignatureType.h
  config.h
  portableOS.h
  sbwSignatureByte.h
  sbwSignatureVoid.h
  sbwbasictypes.h
  sbwdefs.h
  sbwenums.h
  sbwplusbasictypes.h
  stdafx.h