sftemplateswizard/com.nokia.s60tools.symbianfoundationtemplates/templates/r_class_header_template.h
changeset 0 61163b28edca
equal deleted inserted replaced
-1:000000000000 0:61163b28edca
       
     1 /*
       
     2 * ============================================================================
       
     3 *  Name        : ?filename.h
       
     4 *  Part of     : ?Subsystem_name / ?Module_name
       
     5 *  Description : ?Description
       
     6 *  Version     : %version: %
       
     7 *
       
     8 *  Copyright © ?year-?year ?Company_copyright.
       
     9 *  All rights reserved.
       
    10 *  This component and the accompanying materials are made available
       
    11 *  under the terms of the License "?License"
       
    12 *  which accompanies this distribution, and is available
       
    13 *  at the URL "?LicenseUrl".
       
    14 *
       
    15 *  Initial Contributors:
       
    16 *  ?Company_name - initial contribution.
       
    17 *
       
    18 *  Contributors:
       
    19 *  ?Company_name
       
    20 * ============================================================================
       
    21 * Template version: 4.2
       
    22 */
       
    23 
       
    24 *** INSTRUCTIONS TO THE TEMPLATE USER:
       
    25 
       
    26 *** This template follows the Symbian Foundation coding conventions.
       
    27 *** Remove all unneeded declarations and definitions before checking 
       
    28 *** the file in!  Also remove the template's usage instructions, that is, 
       
    29 *** everything that begins with "***".
       
    30 
       
    31 *** The copyright years should be < the year of the file's creation >
       
    32 *** - < the year of the file's latest update >.
       
    33 
       
    34 *** Words that begin with "?" are for you to replace with your own
       
    35 *** identifiers, filenames, or comments.  ?IMPORT_C means either the
       
    36 *** IMPORT_C visibility directive, or nothing, depending on whether
       
    37 *** the function is to be exported or not.
       
    38 
       
    39 *** To support building on Linux, use only forward slashes in include
       
    40 *** directives.  Also, all filenames and pathnames must be completely
       
    41 *** in lowercase.
       
    42 
       
    43 *** Indent four spaces per step, using spaces, not tabs, to display
       
    44 *** the code consistently across different editors.
       
    45 
       
    46 *** An R class denotes a client-side handle to a resource, owned typically by
       
    47 *** a Symbian OS server elsewhere on the device.  Generally R classes are
       
    48 *** instantiated either on the stack, or nested within C classes, then opened
       
    49 *** in some way, usually to a call such as Open() or Connect().  When they
       
    50 *** are finished with, it is essential to use the appropriate function to
       
    51 *** dispose of the class, usually Close().  An R class will derive from zero
       
    52 *** or one other R classes.
       
    53 
       
    54 
       
    55 #ifndef ?R_CLASSNAME_H
       
    56 #define ?R_CLASSNAME_H
       
    57 
       
    58 
       
    59 *** system include files go here:
       
    60 
       
    61 #include <?include_file>
       
    62 
       
    63 *** user include files go here:
       
    64 
       
    65 #include "?include_file"
       
    66 
       
    67 *** forward declarations go here:
       
    68 
       
    69 class ?forward_classname;
       
    70 
       
    71 *** external data types go here:
       
    72 
       
    73 /**  ?description */
       
    74 extern ?data_type;
       
    75 
       
    76 *** constants go here:
       
    77 
       
    78 /**  ?description */
       
    79 const ?type ?constant_var = ?constant;
       
    80 
       
    81 
       
    82 *** the class declaration goes here:
       
    83 
       
    84 /**
       
    85  *  ?one_line_short_description
       
    86  *
       
    87  *  ?more_complete_description
       
    88  *  @code
       
    89  *   ?good_class_usage_example(s)
       
    90  *  @endcode
       
    91  *
       
    92  *  @lib ?library
       
    93  *  @since S60 ?S60_version *** for example, S60 v3.0
       
    94  */
       
    95 class ?classname : public ?base_class_list
       
    96     {
       
    97 
       
    98 *** friend classes go here:
       
    99 
       
   100     friend class ?class1;
       
   101     friend class ?class2;
       
   102 
       
   103 public:
       
   104 
       
   105 *** data types go here:
       
   106 
       
   107     /**  ?description */
       
   108     enum ?declaration
       
   109 
       
   110     /**  ?description */
       
   111     typedef ?declaration
       
   112 
       
   113 *** C++ constructors go here, starting with the default constructor:
       
   114 
       
   115     ?classname();
       
   116 
       
   117     /**
       
   118      * Constructor.
       
   119      *
       
   120      * @since S60 ?S60_version
       
   121      * @param ?arg1 ?description
       
   122      * @param ?arg2 ?description
       
   123      * @return ?description
       
   124      */
       
   125     ?classname( ?type1 ?arg1, ?type2 ?arg2 );
       
   126 
       
   127 *** member functions go here:
       
   128 
       
   129     /**
       
   130      * ?description
       
   131      *
       
   132      * @since S60 ?S60_version
       
   133      * @param ?arg1 ?description
       
   134      * @param ?arg2 ?description
       
   135      * @return ?description
       
   136      */
       
   137     ?IMPORT_C ?type ?member_function( ?type1 ?arg1, ?type2 ?arg2 );
       
   138 
       
   139 // from base class ?base_class
       
   140 
       
   141 *** declarations of functions derived from base_class are grouped
       
   142 *** together here:
       
   143 
       
   144     /**
       
   145      * From ?base_class.
       
   146      * ?description
       
   147      *
       
   148      * @since S60 ?S60_version
       
   149      * @param ?arg1 ?description
       
   150      */
       
   151     ?IMPORT_C ?type ?member_function( ?type ?arg1 );
       
   152 
       
   153 protected:
       
   154 
       
   155 *** function declarations as above
       
   156 
       
   157 // from base class ?base_class
       
   158 
       
   159 *** function declarations as above
       
   160 
       
   161 private:
       
   162 
       
   163 *** private, non-derived functions go here; function declarations as above
       
   164 
       
   165 
       
   166 *** avoid the use of public or protected data; data should nearly
       
   167 *** always be accessed through getter and setter functions
       
   168 
       
   169 private: // data
       
   170 
       
   171     /**
       
   172      * ?description_of_member
       
   173      */
       
   174     ?type ?member_name;
       
   175 
       
   176     };
       
   177 
       
   178 
       
   179 *** put the inline functions, if any, in a file included here:
       
   180 
       
   181 #include "?include_file.inl"
       
   182 
       
   183 
       
   184 #endif // ?R_CLASSNAME_H